
Linux에서 이 명령을 실행하면 다음과 같이 작동합니다.
rm xxx -rf
하지만 OSX에서는 다음과 같이 인수를 먼저 배치해야 합니다.
rm -rf xxx
이 문제를 해결할 수 있는 방법이 있나요?
답변1
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
OS X의 rm을 GNU rm으로 바꾸려면 경로의 다른 디렉터리보다 먼저 실행 brew install coreutils
하고 추가하세요 ./usr/local/opt/coreutils/libexec/gnubin