Ви можете мати сценарій, який працює при запуску, який використовує техніку, запропоновану в цьому дописі https://apple.stackexchange.com/a/91759/183505
Під час завантаження з DriveA (якщо ви хочете відключити індексацію прожектора для зовнішнього DriveB), ви можете виконати:
touch /Volumes/DriveB/.metadata_never_index
Під час завантаження із зовнішнього DriveB і ви хочете знову включити прожектор, можливо, ви могли б виконати сценарій запуску:
rm /Volumes/DriveB/.metadata_never_index
Пов’язана публікація також перелічує інші способи програмного зміни виключень прожекторів.
Ось кілька способів додати скрипт, який запуститься при вході в систему: /programming/6442364/running-script-upon-login-mac
Удачі!
Редагувати: метод за допомогою скриптів bash та файлів плістів
Спочатку створіть сценарій запуску. Я вирішив створити його в~/script.sh
Переконайтеся, що він виконується chmod +x ~/script.sh
Сценарій для ОС, який хоче приховати диск від прожектора
#!/bin/bash
flagLocation="/Volumes/DriveToHide"
flagRemoved=".ney_the_index" # a new name
# if flag exists rename it.
if [ -a "$flagLocation/.metadata_never_index" ]; then
mv "$flagLocation/.metadata_never_index" "$flagLocation/$flagRemoved";
fi
Сценарій в ОС, який хоче індексувати накопичувач
#!/bin/bash
flagLocation="/Volumes/DriveToHide"
flagRemoved=".ney_the_index"
if [ -a "$flagLocation/$flagRemoved" ]; then
mv "$flagLocation/$flagRemoved" "$flagLocation/.metadata_never_index"
fi
if [ ! -a "$flagLocation/$flagRemoved" ] || [ ! -a "$flagLocation/.metadata_never_index" ] ; then
touch "$flagLocation/.metadata_never_index"
fi
Створіть файл-список ~/Library/LaunchAgents/com.user.loginscript.plist
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>com.user.loginscript</string>
<key>Program</key>
<string>/Users/yourusername/script.sh</string>
<key>RunAtLoad</key>
<true/>
</dict>
</plist>
Перевірте його, завантаживши та вивантаживши:
launchctl load ~/Library/LaunchAgents/com.user.loginscript.plist