发现linux下写python, 保存后的.py文件默认是没有x权限
这样一来, 即使代码首行添加了
#!/usr/bin/env python
在首次执行之前还要先chmod
请问大家有什么默认赋x权限的办法吗
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
我比较少编写直接执行的脚本,所以倒是没想过这个功能。不过思路倒还是有几个的。
不知道题主使用的是什么编辑器,我一般用
vim,当然下面我说的方法在emacs上也适用。打开你的
vim配置文件,默认一般是~/.vimrc,所以我一般都是这样编辑:然后在最后面添加上这一句:
这一句的意思是如果你的文件第一行是以
#!开头的话,则默认给他加上可执行权限。加完之后保存退出,然后你编辑一个
python文件试试,应该是默认加执行权限了,我在ubuntu和debian上都测试通过。如果你使用的是
emacs的话,不妨参考这篇文章!首先,楼主的认识有些错误,#!/usr/bin/env python是指定脚本的解释器,+x是对 所有者,组成员和其他人都给予执行权限,这两个并没有什么联系。其次你也可以写个简单的脚本,每次使用vi打开.py文件的时候都执行,不过我认为没有这个必要,毕竟也只是一条chmod指令的事情。
python xxx.py
或者你写个脚本叫
run里面的内容是然后加个执行权限,
run xxx.py你可以对这个脚本进行改造
比如判断后缀是 py 就执行 Python,判断是 c 就用 gcc,判断是 .cpp 就用 g++ ..
“+x”是增加可执行权限, 而“#!/usr/bin/env python”是使用哪个解释器来运行你的脚本。
把你的Linux环境设置umask 默认给自己加x 如设置为766