如何使文件可执行?

如何制作我的文件,以便我可以双击它,然后运行。 它是一个.sh脚本,但我也有文件说:

executable (application/x-executable)

在描述它们是什么。

我无法从终端运行任何这些,或双击。

如果可能的话,我想使用GUI或终端,但不是两者的组合。

这是我右键单击然后继续属性时看到的屏幕截图。 该文件首先:

可执行文件的属性

这里的shell脚本:

shell脚本的属性

注意:我接受这是一个重复(我正在寻找它,但找不到它,所以问+回答它,希望我能找到它)但是,我不认为关于.desktop文件的问题是重复。

有两种方法可以使文件可执行:

GUI方法:

转到权限选项卡,然后勾选方框Execute: [✓]允许执行文件作为程序。

命令行方法:

赶紧跑:

 chmod +x /path/to/your/file.txt 

请注意, chmod还有一些更高级的选项。 它接受三组选项,表示为--- --- --- 。 第一组---是用户。 第二个是Group,最后一个是Other(其他人)。

r代表Read, w代表Write, x代表eXecute。

为了让每个人都能阅读它,但只有Group执行,User才能读取和写入它-rw- rx- r-- 。 这将添加到命令中:

 chmod +rw-rx-r-- /path/to/file.extension 

chmod也可以用数字来做到这一点。 它基于二进制。

所以有这些数字:

用户执行是100 。 按组执行是010 。 其他执行是001

用户写的是200 。 按组写的是020 。 别人写的是002

用户阅读量为400 。 按组读取是040 。 另读的是004

然后将这些添加在一起以获得所需的组合。

因此,为了让每个人都能阅读它,但只有Group才能执行,User只能写入400 + 040 + 004010200

这相当于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拥有全部,而GroupOther可以阅读和执行

  • 700 – Owner拥有所有

  • 644 – Owner可以读写,而GroupOther可以读取

  • 600 – Owner可以读写

而且,如果您使用的是非平凡的用户组:

  • 775 – Owner可以读写,而GroupOther可以读取

  • 770 – OwnerGroup拥有全部,而Other可以阅读和执行

  • 750 – Owner拥有所有OwnerGroup可以读取和执行

  • 664 – OwnerGroup可以读写,而Other只能阅读

  • 660 – OwnerGroup可以读写

  • 640 – Owner可以读写, Group可以读取

很少使用777和666,除了/tmp

感谢Ilmari Karonen 指出常用的!