首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何通过双击使此file.sh可执行?

如何通过双击使此file.sh可执行?
EN

Stack Overflow用户
提问于 2011-12-07 11:10:49
回答 4查看 312.5K关注 0票数 187

首先,我使用的是Mac。

接下来,我需要执行这个"file.sh“,我们称之为它。每次我需要执行它时,我必须打开终端并输入:

代码语言:javascript
复制
cd /Users/Jacob/Documents/folderWithFileInIt
bash file.sh

这是可以的,但我觉得如果我让文件在双击时执行,速度会快很多,你不这样认为吗?

所以我的问题是,如何通过双击使这个文件成为可执行文件?

我的想法是:

a)在终端中输入类似chmod的内容并更改权限?

b)创建一个文件,将我上面写的代码放入其中,然后使该文件成为可执行文件?

c)以某种方式实现自动化来实现这一点?

哪种方法是最好的,还是有更好的方法?此外,请尽可能多地解释,我是新来的终端。谢谢。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2012-03-11 05:09:48

默认情况下,在文本编辑器(Xcode或TextEdit)中打开*.sh文件。要创建在打开终端时将在终端中执行的外壳脚本,请使用“命令”扩展名对其进行命名,例如,file.command。默认情况下,这些文件被发送到终端,终端将以shell脚本的形式执行该文件。

您还需要确保文件是可执行的,例如:

代码语言:javascript
复制
chmod +x file.command

如果没有这个,终端将拒绝执行它。

请注意,在此特定场景中,脚本不必以#!前缀开头,因为终端专门安排使用您的默认shell来执行它。(当然,如果您想要自定义所使用的外壳程序,或者如果您想确保在使用不同的外壳程序时可以从命令行执行它,则可以添加#!行。)

还要注意,终端在不更改工作目录的情况下执行shell脚本。如果您确实需要在特定的工作目录下运行脚本,则需要以cd命令开始。

票数 379
EN

Stack Overflow用户

发布于 2013-07-25 00:54:42

完全删除该扩展名,然后双击它。大多数系统shell脚本都是这样的。只要它有一个shebang,它就会工作。

票数 32
EN

Stack Overflow用户

发布于 2020-07-15 03:07:28

您可以使用chmod更改可执行文件,如下所示

代码语言:javascript
复制
chmod 755 file.sh

并使用以下命令执行

代码语言:javascript
复制
./file.sh
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8409946

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档