![alias 명령에서 옵션을 재정의하는 방법은 무엇입니까? [복사]](https://linux55.com/image/7040/alias%20%EB%AA%85%EB%A0%B9%EC%97%90%EC%84%9C%20%EC%98%B5%EC%85%98%EC%9D%84%20%EC%9E%AC%EC%A0%95%EC%9D%98%ED%95%98%EB%8A%94%20%EB%B0%A9%EB%B2%95%EC%9D%80%20%EB%AC%B4%EC%97%87%EC%9E%85%EB%8B%88%EA%B9%8C%3F%20%5B%EB%B3%B5%EC%82%AC%5D.png)
별칭이 있습니다 rm
.
alias rm='rm -i'
-i
많은 수의 파일을 삭제하고 각 삭제를 확인하고 싶지 않은 경우 이 옵션을 어떻게 무시합니까?
답변1
명령 이름을 이스케이프 처리하거나 인용하여 별칭을 표시하지 않을 수 있습니다. 예를 들어 다음과 같습니다.
\rm foo
"rm" foo
추가 자료:
답변2
가 rm
명령줄에 나중에 나타나면 -f
덮어쓰게 됩니다.-i
명령줄에서 마지막으로 나타나는 옵션이 적용되므로 로 확장하여 alias rm='rm -i'
이 옵션을 재정의 할 수 있습니다 .rm -f
rm -i -f
예를 들어
$ mkdir rmtest
$ cd rmtest
$ touch a b c d e f
$ alias rm='rm -i'
$ rm *
rm: remove regular empty file 'a'? n
rm: remove regular empty file 'b'? n
rm: remove regular empty file 'c'? n
rm: remove regular empty file 'd'? n
rm: remove regular empty file 'e'? n
rm: remove regular empty file 'f'? n
$ rm -f *
$ ls -l
total 0
$
rm -f -i
물론 각 파일을 삭제하라는 메시지는 계속 표시됩니다.
(적어도 GNU의 경우 rm
. 다른 버전은 아직 테스트하지 않았습니다).