zsh에서 rm *을 실행하면 다음 메시지가 나타납니다.
2014-06-08 10:14:23 $ rm *
zsh: sure you want to delete all the files in /home/assay/assay/log [yn]? y
rm: remove regular file `development.log'? y
먼저 zsh는 모든 파일을 삭제하고 싶은지 물었고 rm은 각 특정 파일을 요청했습니다.
zsh 인증은 어떻게 할 수 있나요?
답변1
"zsh: 모든 파일을 삭제하시겠습니까?" 메시지는 rm
glob 확장 또는 이전 인수를 사용하여 명령을 호출하여 트리거되는 zsh의 기능입니다. 다음 명령을 사용하여 이 기능을 끌 수 있습니다*
something/*
setopt rm_star_silent
.
"rm: 일반 파일 제거"라는 메시지는 rm
명령 자체에서 나옵니다. 기본적으로 표시되지 않으며 rm
options 으로 호출될 때만 표시됩니다 -i
. 이 메시지를 원하지 않으면 이 옵션을 전달하지 마십시오. 그렇지 않은 경우에도 -i
읽기 rm
전용 파일을 삭제하려고 하면 (다른 메시지와 함께) 확인 메시지가 표시됩니다. 옵션을 전달하여 이 확인을 제거할 수 있습니다 -f
.
-i
명령줄에서 전달 하지 않았으므로 rm
별칭일 수 있습니다 rm -i
(함수, 비표준 래퍼 명령 또는 다른 별칭일 수도 있지만 별칭이 rm -i
가장 합리적입니다). 일부 기본 구성은 셸 초기화 파일에 포함되어 있습니다 alias rm='rm -i'
. 이는 배포판이나 시스템 관리자가 설정한 것일 수도 있고, 어딘가에서 가져와서 구성 파일에 추가한 후 잊어버린 것일 수도 있습니다. ~/.zshrc
별칭 정의를 확인하세요 rm
. 발견되면 삭제하세요. 찾을 수 없는 경우 별칭을 제거하는 명령을 추가합니다.
unalias rm
답변2
2단계 인증을 비활성화하는 올바른 명령은 setopt rm_star_silent
. 2단계 인증을 활성화하려면 다음을 수행하십시오 setopt no_rm_star_silent
.
자세한 내용은 zshoptions 매뉴얼 페이지를 참조 man zshoptions
하거나http://linux.die.net/man/1/zshoptions
답변3
이유는 모르겠지만 다음은 나에게 효과적입니다. 문제 없습니다.
rm -f **
또는 디렉터리가 관련된 경우:
rm -rf **
답변4
oh-my-zsh를 사용하는 경우 범용 별칭 플러그인에 rm -i 별칭이 포함됩니다.