【问题标题】:How to smoothly make changes to Snow Leopard via bash script如何通过 bash 脚本平滑地对 Snow Leopard 进行更改
【发布时间】:2010-11-21 11:07:30
【问题描述】:

我运行了一个 bash 脚本来切换桌面图标的可见性,如下所示:

#!/bin/bash

DESKTOP=$(defaults read com.apple.finder "CreateDesktop")

if [ $DESKTOP == 1 ]
  then
    defaults write com.apple.finder CreateDesktop -bool false
  else
    defaults write com.apple.finder CreateDesktop -bool true
fi

killall Finder

它有效,但这里有两个问题我不知道是否可以使用 bash。

运行此脚本时,它会打开终端运行应用程序并保持终端打开。

有什么方法可以让这个脚本运行而不需要打开终端? 我找到了这个链接Making an executable bash file run when clicked,它使用 Platypus 作为脚本的包装器,但我想知道是否可以在没有任何额外工具的情况下在本地做某事:)

运行脚本时,killall Finder 会重新启动所有内容,因此屏幕会闪烁,您会失去窗口的实际状态

是否可以只使桌面图标平滑淡入/淡出而不影响基于Finder的窗口和其他资源?

这个Camouflage 应用程序是这样工作的,所以基本上我想知道是否可以使用 bash 脚本复制这种行为。

就是这样,我希望它很容易理解。 你可以说我可以使用这个伪装应用程序来满足我的需要,但实际上我正在尝试了解它并尝试自己做(显然,在你的帮助下:)

提前致谢

更新

我正在查看第二个问题,但我不确定,但似乎有问题的应用程序并没有从 destkop 隐藏图标,而是在桌面上最前面的级别之间创建了一个叠加层(即位于图标上方)并生成与桌面图像相同的图像。因此褪色效果,因为它可以控制出现时的图像过渡。帮助我分析的原因是每次关闭应用程序时,图标都会重新出现。所以它一定与它有关。 如果我错了,真的有可能做其他方式,请分享您的意见:)

【问题讨论】:

  • 您是否尝试过使用不同的信号?例如killall -SIGHUP Finder。我不知道 Finder 会响应什么信号。
  • 我也是,不幸的是我已经尝试过没有什么不同的事情发生:(

标签: macos bash scripting osx-snow-leopard


【解决方案1】:

不确定第二个问题的解决方案,但对于第一个问题:查看您链接到的 StackOverflow 问题的第三个​​答案:

Making an executable bash file run when clicked

您可以使用AppleScript EditorAutomator 创建一个应用程序包,无需打开终端窗口即可运行您的脚本。

【讨论】:

  • 啊,非常感谢,它现在真的按照我想要的方式工作,唯一的问题是 killall Finder 现在......真的希望这能顺利且无副作用
猜你喜欢
  • 1970-01-01
  • 2014-09-16
  • 1970-01-01
  • 2014-11-01
  • 2016-10-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-03-29
相关资源
最近更新 更多