owe*_*ter 6 macos terminal reload defaults
我想使用脚本来修改我的Mac终端的首选项,因此它可以在退出终端时关闭窗口.我在脚本中使用此命令:
/usr/libexec/PlistBuddy -c "Set \"Window Settings\":Basic:shellExitAction 0" ~/Library/Preferences/com.apple.Terminal.plist
现在问题是在执行脚本之后,.plist文件被更改了,我检查了一下
defaults read com.apple.Terminal "Window Settings"
现在值为0.
但问题是终端没有重新加载.plist文件,当我退出终端时,它再次将.plist文件重写为'2'.所以我的问题是如何让终端在运行时重新加载.plist文件,或者在退出时停止重写文件.
miv*_*ivk 10
在10.9(小牛队)中,优先级被缓存.从终端覆盖您的首选项后,您需要阅读它们
defaults read com.apple.Terminal
Run Code Online (Sandbox Code Playgroud)
然后退出并重新启动终端.
我的服务器上有终端首选项,因此我在新机器或新配置文件中使用的完整命令是:
curl -o ~/Library/Preferences/com.apple.Terminal.plist http://example.com/xyz/com.apple.Terminal.plist.`sw_vers \
| grep 'ProductVersion:' \
| grep -o '10\.[0-9]*'` \
&& defaults read com.apple.Terminal
Run Code Online (Sandbox Code Playgroud)
对我来说,这听起来像是一个经典的先有鸡还是先有蛋的问题。
终端在退出时写出其当前首选项并覆盖您的任何更改,但您需要加载终端才能有一个 shell 来使用 PlistBuddy 进行这些更改。
我在这里可以想到两种解决方案:
1) 编写一个可以从非终端进程启动的小脚本...也许是 Applescript 或者可以system从小型 Macintosh 应用程序传递到调用中的东西?:-)
2) 只需通过终端首选项将“设置”更改为您想要的内容即可。
| 归档时间: |
|
| 查看次数: |
9703 次 |
| 最近记录: |