如何自动设置特定文件的可执行位

man*_*eep 10 shell vim editors

我希望当我创建一个特定的文件时,假设我在 vim 编辑器中创建它,创建的文件在创建时也应该获得可执行权限。我想要这个,因为我正在创建一些 python 文件并且不想显式设置文件的权限,所以我想要某种方式,以便在我创建具有特定扩展名或特定编辑器的文件时设置可执行位。

der*_*ert 11

对于 vim,您可以使用强大的脚本。例如,在我的 .vimrc 中,我有:

" Stolen from http://www.debian-administration.org/articles/571
" Sets +x on stuff starting with the magic shebang.
au BufWritePost * if getline(1) =~ "^#!" | silent !chmod a+x <afile>
Run Code Online (Sandbox Code Playgroud)

如果您只想按文件名执行此操作,而不是查找 #! 行,你可以这样做:

au BufWritePost *.ext silent !chmod a+x <afile>     " untested
Run Code Online (Sandbox Code Playgroud)

在Debian管理的文章有Emacs的说明,以及。