Я совсем не знаком с Mac, но у меня есть друг, у которого есть эта проблема (она - человек Mac, но не компьютерщик), поэтому решил, что я попробую.

Проблема в том, что у нее есть несколько старых картинок, которые отображаются в ее ротации заставок - она действительно хочет сохранить их / создать резервную копию, но, похоже, мы не можем найти их на ее компьютере.

Их нет в iPhoto, и поиск всех изображений в ее окне не приводит к их появлению.

Глядя на системные свойства для слайд-шоу заставки, вы можете увидеть список фотографий, но нет никакого способа узнать, где они хранятся (по крайней мере, я смог найти). Нажмите и дважды щелкните, просто откройте его в маленьком окне, я не могу щелкнуть правой кнопкой мыши по ней, и я попробовал все щелчки символов, которые я мог видеть на клавиатуре - без любви.

Может кто-нибудь сказать мне, где хранятся фотографии в ротации заставки, и почему они могут не отображаться при полном компьютерном поиске всех изображений?

1 ответ1

4

Имя папки указывается в Системных настройках »Рабочий стол и заставка» Заставка. Если этого недостаточно, чтобы найти его, у вас есть два варианта:

  1. Расшифруйте закодированные данные, указав, где в файловой системе находится папка
  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 

Используйте это, чтобы найти путь к папке с изображениями.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .