我了解到以下是切换隐藏文件的可见性的方法:
defaults write com.apple.finder AppleShowAllFiles YES
# replace YES with NO to hide hidden files
killall -HUP Finder /System/Library/CoreServices/Finder.app
有没有一种方法可以显示/隐藏隐藏文件而不杀死Finder?
我了解到以下是切换隐藏文件的可见性的方法:
defaults write com.apple.finder AppleShowAllFiles YES
# replace YES with NO to hide hidden files
killall -HUP Finder /System/Library/CoreServices/Finder.app
有没有一种方法可以显示/隐藏隐藏文件而不杀死Finder?
Answers:
编辑:自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对改进隐藏/显示子程序
do shell script
其他应用程序的特权,而没有给它机会审查脚本。Apple进行了此更改以关闭一个安全漏洞,您可以在其中要求以root用户身份运行的程序为您编写脚本。
在macOS Sierra 10.12.4及更高版本上,您可以按⌘+ Shift+ . (句号)在Finder中切换隐藏文件。
后期编辑:自2018年8月18日b5起,当前也可在Mojave上使用。
tell application "System Events"
围绕两个do shell script ...
命令的代码块。实际上,我很惊讶系统事件允许您告诉它调用do shell script
。