Когда я запускаю эту команду под Linux, она работает:
rm xxx -rf
но в OSX я должен поставить аргументы вперед, как это:
rm -rf xxx
Есть ли способ это исправить?
Когда я запускаю эту команду под Linux, она работает:
rm xxx -rf
но в OSX я должен поставить аргументы вперед, как это:
rm -rf xxx
Есть ли способ это исправить?
POSIX фактически требует размещения аргументов перед аргументами без опций:
СИНТАКСИС
rm [-fiRr] file...
GNU/Linux не соответствует POSIX, но OS X соответствует. Если вы установите POSIXLY_CORRECT, GNU rm также не разрешает помещать аргументы без опций перед аргументами:
$ touch a;grm a -rf
$ touch a;POSIXLY_CORRECT= grm a -rf
grm: cannot remove ‘-rf’: No such file or directory
Если вы хотите заменить rm OS X на GNU rm, запустите brew install coreutils
и добавьте /usr/local/opt/coreutils/libexec/gnubin
перед другими каталогами на пути.