Answers:
通过编程,我确定前两个(.command与.tool)之间的区别是细微的,而第三个本质上是一个简单的默认Shell脚本。并且实际上与Xcode 4.1关联。
我相信默认情况下,.sh文件是Xcode所“拥有”的,因此,如果您双击其中一个,它将在Xcode中打开而不是执行。
默认情况下,.command和.tool文件归Terminal所有,因此,如果双击其中之一,它将在Terminal中打开并执行。
我不知道它们之间有任何其他区别。
我也曾经使用.sh作为shell脚本,但是最近我停止了,因为我开始用Zsh而不是sh来编写我的shell脚本,并且试图记住某个命令是否以.sh结束还是令人困惑。 .zsh,所以我最终将它们全部放入〜/ bin /并确保它们是可执行的,并且根本不使用文件扩展名。