我怎样才能使我的文件能够双击并运行。这是一个.sh
脚本,但我还有一些文件说:
executable (application/x-executable)
在对它们是什么的描述中。
我无法从终端或通过双击运行其中任何一个。
如果可能的话,我希望使用 GUI 或终端的方式,而不是两者的结合。
这是我右键单击然后进入属性时看到的屏幕截图。首先是文件:
下面是 shell 脚本:
注意:我承认这是一个重复的问题(我正在寻找它,但找不到,所以问了+回答了它,希望我能找到它)但是,我不认为有关 .desktop 文件的问题是一个重复的问题。
答案1
有两种方法可以使文件可执行:
GUI 方法:
转到权限选项卡,然后勾选Execute: [✓]
允许作为程序执行文件框。
命令行方法:
赶紧跑:
chmod +x /path/to/your/file.txt
请注意,它还chmod
具有一些更高级的选项。它接受三组选项,表示为--- --- ---
。第一组---
是用户。第二组是组,最后一组是其他(其他所有人)。
r
代表读取、w
写入和x
执行。
要允许所有人读取它,但只有组可以执行,只有用户可以读写它-rw- rx- r--
,则需要将其添加到命令中,如下所示:
chmod +rw-rx-r-- /path/to/file.extension
chmod
也可以用数字来实现。它基于二进制。
因此有以下数字:
由用户执行是100
。由组执行是010
。由其他人执行是001
由用户写入是200
。由组写入是020
。由其他人写入是002
。
用户已读取是400
。 组已读取是040
。 其他人已读取是004
。
然后将它们加在一起即可得到所需的组合。
因此,要允许所有人读取它,但只有组才能执行,只有用户可以写入它,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
可以读取
777 和 666 很少使用,除非在 中/tmp
。