Некоторые команды используют нижний регистр rдля своего рекурсивного флага, в то время как другие используют заглавную букву R.
cp -r foo/ bar/
chmod -R 777 foobar/
Есть причина для этого?
Некоторые команды используют нижний регистр rдля своего рекурсивного флага, в то время как другие используют заглавную букву R.
cp -r foo/ bar/
chmod -R 777 foobar/
Есть причина для этого?
Ответы:
cp на самом деле принимает оба.
От cp --help:
-R, -r, --recursive copy directories recursively
Для согласованности большинство команд оболочки используют -Rв качестве рекурсивного флага, вероятно, потому что они имитируют поведение ls.
От ls --help:
-r, --reverse reverse order while sorting
-R, --recursive list subdirectories recursively
Я не уверен, что есть какая-то конкретная причина несоответствия, кроме того, что программисты могут использовать любые флаги, которые они хотят.
Я не думаю, что есть какая-то форма стандарта для этого, поэтому трудно ожидать, что все последуют этому примеру.
chmod -rуже используется для обозначения чего-то другого, кроме рекурсивного!