系统管理员可以遵循哪些约定来命名本地用户命令(即管理员编写的脚本,通过 PATH 提供给用户)?目标是防止与默认 PATH 中发行版提供的命令发生冲突。当然,任何此类约定都需要相应 Linux 发行版的配合(我对 Debian 特别感兴趣)。
建议:
- 在命令前面加上管理员控制的域(可能以反向表示法表示):
com.example-passwdldap
用于在本地 LDAP 服务器中更改密码的脚本。这当然可以防止名称冲突,但是,用户可能会抱怨名称太长。 - 在命令前面加上下划线:
_passwdldap
。据我所知,shell 脚本中的内部函数通常这样命名,但这应该不是问题。 - 在命令前面添加二下划线:
__passwdldap
。这种命名对于内部函数来说也很常见,我认为这应该不是问题。 - 追加一个或两个下划线可能不太清楚,特别是如果系统中确实存在同名命令(没有下划线)。用户可能会使用自动完成,然后忘记添加下划线。