我有一个 Shell 脚本文件。在其中,我在放置 sh 文件的同一文件夹中创建了一个文本文件。
我想双击运行 sh 文件。当用户双击 sh 文件时,将执行 sh 文件,并在同一目录中生成一个文本文件。
我知道我可以使用以下方法制作可执行文件:chmod +x myfile.sh
但问题是:
当我在其他机器或具有不同驱动器的同一机器上运行此文件时,我需要再次使其可执行。我想要的行为就像 Windows 中的“exe 文件”一样。
我有一个 Shell 脚本文件。在其中,我在放置 sh 文件的同一文件夹中创建了一个文本文件。
我想双击运行 sh 文件。当用户双击 sh 文件时,将执行 sh 文件,并在同一目录中生成一个文本文件。
我知道我可以使用以下方法制作可执行文件:chmod +x myfile.sh
但问题是:
当我在其他机器或具有不同驱动器的同一机器上运行此文件时,我需要再次使其可执行。我想要的行为就像 Windows 中的“exe 文件”一样。
如果您将文件复制到文件系统不支持 Linux 权限模型的驱动器,您将失去这些权限。解决方案是改用 Linux 友好的文件系统(重新格式化驱动器,使用例如ext2
文件系统),但侵入性较小的解决方法是将文件存储在保留权限的容器中(例如tar
文件)并从那里提取到目标系统。
如果你需要支持只能学会用鼠标点击和拖动的用户,只有第一个选项是可行的。
如果目标系统可以访问 Internet,也许简单的方法是将文件放在服务器上,然后将带有下载 URL 的文本文件放在存储棒上。
您可以右键单击该文件并选择properties
. 选中显示 的框Allow executing file as a program
。