フォルダの名前は システム環境設定»デスクトップスクリーンセーバー»スクリーンセーバー 。それだけでは見つからない場合は、2つの選択肢があります。
- ファイルシステム上のフォルダの場所を指定して、エンコードされたデータをデコードします。
- そのフォルダの画像が表示されている間にファイルシステムへのアクセスを監視します。
データをデコードする
場所はに保存されています ~/Library/Preferences/ByHost/com.apple.screensaver.*.plist
、 *
UUIDです。
ターミナルで次のコマンドを実行してください。
/usr/libexec/PlistBuddy -c 'Print moduleDict:fileRef' $( ls -t ~/Library/Preferences/ByHost/com.apple.screensaver.*.plist | grep -v slideshow | head -n1 ) | grep -oaE 'file://[^[:cntrl:]]+/'
これは最初に最新のものを取得します com.apple.screensaver.*.plist
含まれていないファイル slideshow
その名前で、その内容を読んでください。プロパティリストファイルの関連エントリは、 moduleDict:fileRef
。
これで、戻り値(多くのバイナリデータ)がファイルのURLに対してフィルタ処理されました。これは印刷されています。私のシステムでは、このようになります。
file:///Users/danielbeck/Pictures/
その道は、もちろん、 /Users/danielbeck/Pictures
。
ファイルシステムを監視する
開いた システム環境設定»デスクトップスクリーンセーバー»スクリーンセーバー プレビューしたいフォルダを選択します。
さて、このウィンドウを開いたままターミナルウィンドウを開いて以下を実行してください。
sudo opensnoop | grep -v '/.vol' | grep "System Pref"
パスワードを入力してお待ちください。イメージファイルがロードされるときにそのイメージファイルへのパスが印刷されます(あるファイルが表示されているときは、次のファイルがすでにロードされています)。記載されているファイルの一部は 偽陽性 しかし、それらは認識しやすいはずです。
501 77313 System Preferen 16 /Users/danielbeck/Pictures/Icons/fugue-icons-2.0/icon/contrast-small.png
501 77313 System Preferen 16 /Users/danielbeck/Pictures/Icons/Crystal Clear/22x22/actions/ok.png
501 77313 System Preferen 16 /System/Library/ColorSync/Profiles/sRGB Profile.icc
501 77313 System Preferen 16 /Users/danielbeck/Pictures/Icons/GNU Lesser General Public License/nuvola/64x64/mimetypes/tgz.png
501 77313 System Preferen 16 /Users/danielbeck/Pictures/Icons/crystal_project/32x32/devices/pipe.png
これを使用して、写真フォルダへのパスを見つけます。