Jam*_*ond 7 linux shell naming-conventions
我有一些存储共享变量的 makefile,例如 CC=gcc ,我应该如何命名它们?
候选人是:
common.mk
Make.common
Makefile.common
Run Code Online (Sandbox Code Playgroud)
..哪个更经典?有标准吗?
同样,我有一些 shell 脚本,我应该从以下选项中进行选择:
do_this_please.sh
do-this-please.sh
DoThisPlease.sh
doThisPlease.sh
Run Code Online (Sandbox Code Playgroud)
这些是否有普遍接受的“案例”和后缀?
flo*_*w2k 19
Google 的开源风格使用下划线作为分隔符: https: //google.github.io/styleguide/shellguide.html#s7.4-source-filenames。
所以在你的情况下,它将是do_this_please.sh或do_this_please使用这种风格。
小智 8
您所拥有的是将构建粘合在一起的各个部分。构建脚本、自动生成的配置、其他 makefile 包含的 makefile - 质疑这些东西应该如何命名是一个好主意。
最重要的是,保持一致。
我见过很多通过 Makefile 包含的文件的 .mk 扩展名。然而,正如 Gyom 所说,这是一个非常主观的问题。
任何能让您选择的编辑器中的语法荧光笔满意的东西都可能是一个不错的选择。如果您所在的团队中每个人都使用不同的东西,请询问其他人。对我来说,用 .mk 扩展名命名 makefile include 对每个人来说都是正确的。使用 .sh 后缀命名 shell 脚本也有类似的帮助。
简而言之,使文件名显而易见,并尝试在尽可能多的编辑器/IDE 上进行语法突出显示。Makefile.common 可能不会这样做,common.mk 可能有更好的办法。
我会去的do_this_please.sh。这是我的推理:
从可读性的角度来看,间距是更好的选择。这让我们远离了骆驼箱。
破折号在大多数 shell 中具有特殊含义,因此漂亮打印词法分析器会在漂亮打印涉及您的文件之一的内容时拾取它并给出奇怪的可视化效果。你看上面的一个案例。
这留下了带下划线的版本。一些额外的赞成点: