linux - 在 Linux 中创建可执行文件

标签 linux executable file-permissions chmod gedit

我打算做的一件事是编写(非常简单的)Perl 脚本,我希望能够在不从终端显式调用 Perl 的情况下运行它们。我很感激,为此,我需要授予他们执行权限。使用 chmod 执行此操作很容易,但它似乎也是一个稍微费力的额外步骤。我想要的是以下两件事之一:

首先,有没有办法在保存文件时设置执行标志?目前我正在尝试使用 gedit 和 geany,但如果它具有此功能,我愿意切换到具有类似(或更好)功能的编辑器。

如果做不到这一点,有没有办法声明在特定目录中创建的所有文件都应该具有执行权限?

我的 umask 设置为 022,据我了解,这应该没问题,但似乎这些文件是作为文本文件(具有 666 个默认权限)而不是可执行文件(具有 777 个默认权限)创建的。

也许我只是懒惰,但我认为必须有一种比 chmod 更方便的方法,而不是对每个创建的单个脚本进行 chmod。

最佳答案

使文件可执行:

chmod +x file

找到perl的位置:

which perl

这应该返回类似

/bin/perl sometimes /usr/local/bin

然后在脚本的第一行添加:

#!"path"/perl with path from above e.g.

#!/bin/perl

然后就可以执行文件了

./file

PATH 可能存在一些问题,因此您可能也想更改它...

关于linux - 在 Linux 中创建可执行文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/817060/

相关文章:

linux - 在ubuntu中批量重命名文件

c - gethostbyname/getaddrinfo 一直失败,即使互联网连接已启动

c++ - 如何检查路径是否指向可执行文件?

python - 由于权限问题,无法写入文件

PHP 创建的文件 | SSH 无法删除(权限被拒绝)

java - 即使在服务器停止后仍然能够访问 url?

c++ - new[] 在填充之前不会减少可用内存

python - 将python脚本转换为可执行文件,没有名为 'codecs'的模块

javascript - 有没有办法为 Node.js (npm) 应用程序创建快捷方式桌面?

linux - 如何将文件权限授予组中的特定用户?