GNU rm으로 파일의 삭제시 특수문자나 공백 등이 있다면
"로 묶어 주어 지워주지만,
파일이름이 -이나 --등으로 시작되는 경우 예를들어
rm --test.txt의 경우에는 --test.txt를 옵션으로 인식해
버려서 삭제가 안됩니다.
이것은 거의 모든 프로그램이 getpot 함수를 사용하여
전달되는 argument들을 parsing하기 때문입니다.
rm 코딩시 처음 -와 --를 옵션으로 인식하도록 하였으므로
옵션이 아무것도 없다는 것을 프로그램에 알려주어야 합니다.
이는 '--' 옵션의 사용므로 가능하며 이후의 모든것은 옵션이
아니라는 뜻이되죠.
위의 예에 적용해 보자면
rm -- --test.txt
하면 정상적으로 삭제가 될것입니다.
이와 마찬가지로 -나 --로 시작하는 파일들의 경우
모두 -- 옵션을 주어 사용하시면 됩니다.
ex) touch -- --test.txt 혹은 vi -- --test.txt
"로 묶어 주어 지워주지만,
파일이름이 -이나 --등으로 시작되는 경우 예를들어
rm --test.txt의 경우에는 --test.txt를 옵션으로 인식해
버려서 삭제가 안됩니다.
이것은 거의 모든 프로그램이 getpot 함수를 사용하여
전달되는 argument들을 parsing하기 때문입니다.
rm 코딩시 처음 -와 --를 옵션으로 인식하도록 하였으므로
옵션이 아무것도 없다는 것을 프로그램에 알려주어야 합니다.
이는 '--' 옵션의 사용므로 가능하며 이후의 모든것은 옵션이
아니라는 뜻이되죠.
위의 예에 적용해 보자면
rm -- --test.txt
하면 정상적으로 삭제가 될것입니다.
이와 마찬가지로 -나 --로 시작하는 파일들의 경우
모두 -- 옵션을 주어 사용하시면 됩니다.
ex) touch -- --test.txt 혹은 vi -- --test.txt