使新文件自动可执行?

是否有可能使所有新创build的文件在创build时都具有执行权限? 为什么我不能默认授予它?

从666减去文件的umask,从777减去目录。所以如果你的umask是002,你创建了一个目录,你得到775(777 – 002),如果你创建一个文件,你会得到664(666 – 002 )。

umask只是减去默认的文件和目录权限。

 777 initial file permissions 111 execute bit is not set by default --- 666 default file permissions 022 subtract default Unix umask --- 644 voila, final file permissions 

执行位必须设置为所有者cd到他们创建的目录,因此设置了用户执行权限,导致在使用上述umask时的目录权限为744。

我发现没有办法设置哪个会设置执行,默认情况下。 无论如何,这将是一个不好的mojo,但是我正在研究一个我正在写的网络安全课程。

以安全的方式? 否。以不安全的方式:只需在~/.bashrc文件中添加umask xxx来更改umask ,其中xxx表示您希望的权限掩码。

笔记:

  1. 这是不安全的(我已经提到了吗?其他人做了。)
  2. 这可能会导致很多问题。 一个是在某些系统上不允许创建文件)

推荐方式

只对实际需要执行权限的文件执行此操作。

 chmod +x /the/file