在 Mac OS X 中完全禁用“重新登录时重新打开 Windows”

登录时禁用重新打开 Windows

您可能已经注意到,当您注销或重新启动 Mac OS X 时,您会看到一个对话框窗口,其中“重新登录时重新打开窗口”旁边有一个复选框,可以恢复所有当前打开的应用程序和窗口。

如果您不喜欢它并且厌倦了取消选中不再重新打开窗口的复选框,您可以使用第三方脚本来使该功能失效。需要澄清的是,这样做的目的是不断地完全禁用该功能,无论是否选中保留窗口的复选框,窗口都不会恢复。

虽然这是 OS X 的 Resume 功能的一部分,但它不同于 完全禁用应用程序恢复基于每个应用程序,因为这只会影响重启和注销。

通过使其无用来关闭“重新登录时重新打开窗口”

请记住,此脚本会禁用该功能,但对话窗口仍会弹出。与此脚本不同的是,对话框是否选中并不重要,窗口和应用程序不会恢复。这针对熟悉命令行的高级用户,不正确的语法可能会导致错误或访问错误的 URL,因此请特别注意您使用的是什么。如果您不确定,请不要继续。这是从第三方网站访问脚本,使用风险自负。

将以下粘贴到终端中的一行中,然后按回车键:

curl http://pastie.org/pastes/2427953 -L -s -o ~/fixlogin.sh

接下来,检查文件以确保它是您想要包含的内容:

cat ~/fixlogin.sh

如果文件匹配下面的脚本内容,你可以用下面的命令执行它:

chmod +x ~/fixlogin.sh && sudo ~/fixlogin.sh rm ~/fixlogin.sh

注意:如果您宁愿创建自己的文件而不使用 curl 从名为 pastie 的远程主机下载“fixlogin.sh”脚本,文件 是这个,你可以将以下内容粘贴到一个名为’loginfix.sh’的文件中,使用chmod +x使其可执行,然后手动执行脚本:

#!/bin/bash
echo "#!/bin/bash" > /tmp/loginfix.sh
echo "rm /Users/*/Library/Preferences/ByHost/com.apple.loginwindow.*" >> /tmp/loginfix.sh
mv /tmp/loginfix.sh /usr/bin/loginfix.sh
chmod +x /usr/bin/loginfix.sh
默认写com.apple.loginwindow LoginHook /usr/bin/loginfix.sh

如您所见,该脚本删除了用户 ~/Library/Preferences/ByHost/ 目录中匹配“com.apple.loginwindow.*”的所有内容

(上面的文字故意很小,以便放在一行中)

然后用下面的命令执行它:

chmod +x ~/fixlogin.sh && sudo ~/fixlogin.sh rm ~/fixlogin.sh

该命令下载脚本,将其放置在适当的位置,使其可执行,然后删除临时文件。如果您想知道,下载的 bash 脚本的内容如下:

#!/bin/bash
echo "#!/bin/bash" > /tmp/loginfix.sh
echo "rm /Users/*/Library/Preferences/ByHost/com.apple.loginwindow.*" >> /tmp/loginfix.sh
mv /tmp/loginfix.sh /usr/bin/loginfix.sh
chmod +x /usr/bin/loginfix.sh
默认写com.apple.loginwindow LoginHook /usr/bin/loginfix.sh

如果您想恢复到此 OS X Lion 功能的默认行为,只需键入以下默认写入命令:

sudo defaults delete com.apple.loginwindow LoginHook

然后您将能够根据该复选框的选择来选择窗口还原。

这个小脚本 来自 HexBrain,感谢您在 Mark 中发送此信息!