8 有些命令r的递归标志使用小写字母,而另一些命令则使用大写字母R。 cp -r foo/ bar/ chmod -R 777 foobar/ 是否有一个原因? linux command-line — 李·夸雷利亚 source
8 cp 实际上接受两者。 来自cp --help: -R, -r, --recursive copy directories recursively 为了保持一致性,大多数shell命令都将其-R用作递归标志,这可能是因为它们模仿的行为ls。 来自ls --help: -r, --reverse reverse order while sorting -R, --recursive list subdirectories recursively — 丹尼斯 source 1 另外,chmod -r已经用来表示递归以外的东西! — 达斯Android
3 除了程序员可以选择使用他们想要的任何标志之外,我不确定是否有导致这种不一致的任何特定原因。 我认为没有任何形式的标准,因此很难期望所有人都效仿。 — 达里奥·鲁索(Dario Russo) source 7 原因可能是历史原因。在可以追溯到70年代的更大的Unix世界中,递归开关并不总是存在的,并且某些命令已经使用-r作为开关。由于命令通常在脚本中使用,因此向后兼容性会带来极大的惯性,因此这些事情基本上不会改变-您可以向程序中添加选项,但是尝试更改已建立的功能的开发人员会感到痛苦。 — Stephanie 2012年
chmod -r
已经用来表示递归以外的东西!