Shell脚本中缩进的标准是什么?[关闭]


58

Java社区使用4个空格作为缩进单位。1
Ruby社区使用2个通常同意的空间。2

Shell脚本中缩进的标准是什么?2个或4个空格或1个制表符?


42
标准很棒。我们有很多可供选择...
沙杜尔

1
有趣的是,请看一下/etc/init.d中脚本的“标准”缩进。您会发现在不同的脚本中使用了两个空格的标准,四个空格,一个选项卡等,有时在同一脚本中使用了两个标准。
cjc 2012年

1
无耻插头:让庆典本身决定的正确的缩进的自动的:unix.stackexchange.com/questions/274888/...
奥利维尔·杜拉克

标准是避免使用制表符,并对任何不遵守该简单规则的人打耳光。您所使用的空格数是您的业务,但是如果您选择遵循Tab键的路径,那么将无济于事。
Parthian Shot

2
如果使用标签,则可以缩进<<-heredocs。stackoverflow.com/a/33817423/99777您不能使用空格来做到这一点。“对于shell脚本,使用制表符不是喜好或样式的问题;这是语言的定义方式。”
joeytwiddle

Answers:


43

Shell脚本中没有重要的标准缩进。

轻率的回答要少一些:

  • 在团队中选择一个大家都可以遵循的标准,以简化工作。
  • 使用您的编辑器使事情变得容易,这样您就不必为遵守标准而战。

从历史上看,每个压痕级别有四个空格可能是最常见的。
con-f-use

26

我从未见过shell指定的样式指南,但是对于bash编程,这是最受欢迎的一种:

Bash样式指南和编码标准.pdf | lug.fh-swf.de

程序构造的缩进必须与逻辑嵌套深度一致。一步的缩进通常与所选编辑器的制表符步骤一致。在大多数情况下,选择2、4或8。



-5

只需使用vim编辑器打开文件,然后键入即可gg=G重新缩进整个文件。我认为这是标准。


1
这将基于shiftwidth(aka sw)vim变量的值进行缩进。默认情况下,它是8,对应于终端中的默认制表位。该值是历史的,很少有人使用8空格缩进现在,我已经set sw=2在我的~/.vimrc几十年。
斯特凡Chazelas
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.