Możesz mieć skrypt uruchamiany przy starcie, który wykorzystuje technikę sugerowaną w tym poście https://apple.stackexchange.com/a/91759/183505
Podczas uruchamiania z DriveA (gdy chcesz wyłączyć indeksowanie reflektorów dla zewnętrznego DriveB), możesz wykonać:
touch /Volumes/DriveB/.metadata_never_index
Podczas uruchamiania z zewnętrznego dysku DriveB i chcesz ponownie włączyć wyróżnienie, być może możesz uruchomić skrypt uruchamiania:
rm /Volumes/DriveB/.metadata_never_index
W linkowanym wpisie wymieniono także inne sposoby programowej zmiany wyłączeń reflektorów.
Oto kilka sposobów dodania skryptu, który uruchomi się podczas logowania: /programming/6442364/running-script-upon-login-mac
Powodzenia!
Edycja: Metoda przy użyciu skryptów bash i plików plist
Najpierw utwórz skrypt startowy. Zdecydowałem się stworzyć jeden w~/script.sh
Upewnij się, że jest wykonywalny chmod +x ~/script.sh
Skrypt dla systemu operacyjnego, który chce ukryć dysk przed centrum uwagi
#!/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
Skrypt w systemie operacyjnym, który chce zindeksować dysk
#!/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
Utwórz plik plist ~/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>
Przetestuj go, ładując i rozładowując:
launchctl load ~/Library/LaunchAgents/com.user.loginscript.plist