zsh에서 이중 rm 확인

zsh에서 이중 rm 확인

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: 모든 파일을 삭제하시겠습니까?" 메시지는 rmglob 확장 또는 이전 인수를 사용하여 명령을 호출하여 트리거되는 zsh의 기능입니다. 다음 명령을 사용하여 이 기능을 끌 수 있습니다*something/*setopt rm_star_silent.

"rm: 일반 파일 제거"라는 메시지는 rm명령 자체에서 나옵니다. 기본적으로 표시되지 않으며 rmoptions 으로 호출될 때만 표시됩니다 -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 별칭이 포함됩니다.

https://github.com/robbyrussell/oh-my-zsh/blob/master/plugins/common-aliases/common-aliases.plugin.zsh

관련 정보