alias 명령에서 옵션을 재정의하는 방법은 무엇입니까? [복사]

alias 명령에서 옵션을 재정의하는 방법은 무엇입니까? [복사]

별칭이 있습니다 rm.

alias rm='rm -i'

-i많은 수의 파일을 삭제하고 각 삭제를 확인하고 싶지 않은 경우 이 옵션을 어떻게 무시합니까?

답변1

명령 이름을 이스케이프 처리하거나 인용하여 별칭을 표시하지 않을 수 있습니다. 예를 들어 다음과 같습니다.

\rm foo
"rm" foo

추가 자료:

답변2

rm명령줄에 나중에 나타나면 -f덮어쓰게 됩니다.-i

명령줄에서 마지막으로 나타나는 옵션이 적용되므로 로 확장하여 alias rm='rm -i'이 옵션을 재정의 할 수 있습니다 .rm -frm -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. 다른 버전은 아직 테스트하지 않았습니다).

관련 정보