首先,我使用的是Mac。
接下来,我需要执行这个"file.sh“,我们称之为它。每次我需要执行它时,我必须打开终端并输入:
cd /Users/Jacob/Documents/folderWithFileInIt
bash file.sh
这是可以的,但我觉得如果我让文件在双击时执行,速度会快很多,你不这样认为吗?
所以我的问题是,如何通过双击使这个文件成为可执行文件?
我的想法是:
a)在终端中输入类似chmod的内容并更改权限?
b)创建一个文件,将我上面写的代码放入其中,然后使该文件成为可执行文件?
c)以某种方式实现自动化来实现这一点?
哪种方法是最好的,还是有更好的方法?此外,请尽可能多地解释,我是新来的终端。谢谢。
发布于 2012-03-11 05:09:48
默认情况下,在文本编辑器(Xcode或TextEdit)中打开*.sh
文件。要创建在打开终端时将在终端中执行的外壳脚本,请使用“命令”扩展名对其进行命名,例如,file.command
。默认情况下,这些文件被发送到终端,终端将以shell脚本的形式执行该文件。
您还需要确保文件是可执行的,例如:
chmod +x file.command
如果没有这个,终端将拒绝执行它。
请注意,在此特定场景中,脚本不必以#!
前缀开头,因为终端专门安排使用您的默认shell来执行它。(当然,如果您想要自定义所使用的外壳程序,或者如果您想确保在使用不同的外壳程序时可以从命令行执行它,则可以添加#!
行。)
还要注意,终端在不更改工作目录的情况下执行shell脚本。如果您确实需要在特定的工作目录下运行脚本,则需要以cd
命令开始。
发布于 2013-07-25 00:54:42
完全删除该扩展名,然后双击它。大多数系统shell脚本都是这样的。只要它有一个shebang,它就会工作。
发布于 2020-07-15 03:07:28
您可以使用chmod
更改可执行文件,如下所示
chmod 755 file.sh
并使用以下命令执行
./file.sh
https://stackoverflow.com/questions/8409946
复制相似问题