Я понял, что можно переключать видимость скрытых файлов следующим образом:
defaults write com.apple.finder AppleShowAllFiles YES
# replace YES with NO to hide hidden files
killall -HUP Finder /System/Library/CoreServices/Finder.app
Есть ли способ показать/скрыть скрытые файлы, не убивая Finder?
Изменить: это больше не работает со времен El Capitan. killall Finder
кажется, это единственный способ сейчас.
Это мой текущий метод El Capitan, который также должен работать для Mountain Lion и старше.
set newHiddenVisiblesState to "YES"
try
set oldHiddenVisiblesState to do shell script "defaults read com.apple.finder AppleShowAllFiles"
if oldHiddenVisiblesState is in {"1", "YES"} then
set newHiddenVisiblesState to "NO"
end if
end try
do shell script "defaults write com.apple.finder AppleShowAllFiles " & newHiddenVisiblesState & "; killall Finder"
Для Маверикс и Йосемити…
Вам не нужно перезапускать Finder, только обновите окна.
Этот Applescript будет переключать состояние и обновлять...
set newHiddenVisiblesState to "YES"
try
set oldHiddenVisiblesState to do shell script "defaults read com.apple.finder AppleShowAllFiles"
if oldHiddenVisiblesState is in {"1", "YES"} then
set newHiddenVisiblesState to "NO"
end if
end try
do shell script "defaults write com.apple.finder AppleShowAllFiles " & newHiddenVisiblesState
tell application "Finder"
set theWindows to every Finder window
repeat with i from 1 to number of items in theWindows
set this_item to item i of theWindows
set theView to current view of this_item
if theView is list view then
set current view of this_item to icon view
else
set current view of this_item to list view
end if
set current view of this_item to theView
end repeat
end tell
Спасибо ganbustein за улучшенную рутину прятки / шоу.
В macOS Sierra версии 10.12.4 и выше вы можете нажать ⌘+ Shift+ . (точка) , чтобы переключить скрытые файлы внутри Finder.
Позднее редактирование: в настоящее время это работает и в Мохаве, начиная с b5, 18 августа 2018 г.
ганбустайн
tell application "System Events"
блок вокруг двухdo shell script ...
команд. На самом деле, я удивлен, что System Events позволяет вам сказать ему вызыватьdo shell script
.Тецуджин
ганбустайн
do shell script
с привилегиями какого-то другого приложения, не давая ему возможности проверить скрипт. Apple внесла это изменение, чтобы закрыть дыру в безопасности, из-за которой вы могли попросить программу, работающую от имени пользователя root, выполнить ваш сценарий за вас.Тецуджин
Ти Джей Луома
Тецуджин
Высокий мальчик
The action 'run shell script' encountered an error
Тецуджин