我有一个script.sh文件,此文件的类型是shellscript文件。我想将此文件制作为application / x-executable文件。我该怎么做?
我有一个script.sh文件,此文件的类型是shellscript文件。我想将此文件制作为application / x-executable文件。我该怎么做?
Answers:
您可以将文件标记为可执行文件:
chmod +x filename.sh
然后可以像这样执行它:
./filename.sh
如果要使用其他命令来启动它,则可以添加别名:
gedit ~/.bashrc
在文件末尾添加:
alias <new name>='/home/<full path to script>/filename.sh'
打开一个新的终端会话或输入source ~/.bashrc
您的终端以进行申请。然后,只需使用新名称即可启动脚本。
./filename.sh
,而不仅仅是filename.sh
?
filename
而不是可以执行的方法./filename
./filename.sh
指定当前目录filename.sh
中的文件,using 指定当前目录或PATH的任何目录中的文件。首次使用消除了有关访问哪个文件的任何不确定性。在这种情况下,您试图#!/bin/bash
仅通过输入文件名来使用bash或其他解释器(由于假定为脚本的第一行)来执行脚本。此用法要求指定目录。另外,您可以尝试bash filename.sh
使用未指定的目录。
使文件可执行的方法有两种:
GUI方法:
进入权限选项卡,然后勾选“执行:[]允许执行程序文件”框。
终端/命令方式:
您可以使用:
cd /to/my/required/directory
然后跑
chmod +x filename.extension
或者只是运行:
chmod +x /path/to/your/filename.extension
chmod
确实还有一些更高级的选项:
空格表示它已被拆分: - rwx --- ---
第一组---
是用户。第二个是“组”,最后一个是“其他”(其他任何人)
r代表读,w代表写,x代表eXecute。
因此,允许每个人都可以读取它,但只有Group可以执行,而User可以读写(但由于某些原因无法执行),它是:
-rw- rx- r--
但这将添加为命令:
chmod +rw-rx-r-- /path/to/file.extension
chmod
也可以做到这一点。它基于二进制(我认为是1,2和4)
所以有这些数字:
用户执行的是100
。按组执行是010
。其他执行为001
用户写的是200
。按组写是020
。被别人写是002
。
用户读取的是400
。按组阅读是040
。被别人读是004
。
然后将它们加在一起以获得所需的组合。
因此,允许每个人都可以读取它,但只有Group可以执行,而User可以写入(但由于某些原因无法执行),将是:
400 + 040 + 004
并010
与200
总计为600 + 050 + 004 = 654。
然后,您可以运行命令。
chmod +654 /path/to/file.extension
设置它。
并设置所有权限,您可以输入:
chmod +rwxrwxrwx /path/to/file.extension
或者(这样写起来比较容易,但是很难记住每一个):
chmod +777 /path/to/file.extension
最后,您可以执行以下操作:
chmod -777 /path/to/file.extension
剥夺所有人的所有权限。
和:
chmod +300 /path/to/file.extension
在不影响任何其他权限(例如执行权限)的情况下为用户添加读写权限。
该网站有一个非常有用的小网格复选框,您可以在其中勾选所需的选项,并提供以下命令:
但是,并非所有可能的组合都适合使用。使用的主要方法如下:
755- Owner
具有全部,Group
并且Other
可以读取和执行
700- Owner
全部
644- Owner
可以读写,Group
并且Other
可以读取
600- Owner
可以读写
而且,如果您使用的是普通用户组:
775- Owner
可以读写,Group
并且Other
可以读取
770 - Owner
并且Group
都有,并且Other
可以读取和执行
750- Owner
具有全部功能,Group
可以读取和执行
664 - Owner
和Group
可读写,并且Other
可以只读取
660 - Owner
和Group
可读写
640- Owner
可以读写,并且Group
可以读取
除/ tmp外,很少使用777和666。
感谢ILMARI Karonen用于指出在通常使用的那些!