Google 검색에는 결과가 표시되지 않았습니다. 내 말은 다음과 같습니다. x
내 경로(현재 폴더는 아니지만 위치 PATH
) 에 이름이 지정된 이진 파일이 있습니다 .반품현재 작업 디렉터리에 있는 동일한 이름의 폴더입니다. 를 입력하면 x
바이너리가 실행될 것으로 예상되지만 폴더로 들어갑니다. 어떻게 해결할 수 있나요?
답변1
TL;DR
다음 줄을 다음 항목에 추가하세요 ~/.zshrc
.
unsetopt autocd
AUTO_CD 옵션 및 찾는 방법
먼저 찾고 있는 옵션은 AUTO_CD입니다. "man zshoptions"로 검색하시면 쉽게 찾으실 수 있습니다. 호출기 검색 기능을 사용하려면 일반적으로 키를 누르고 /키워드를 입력합니다. n다음 발생이 발생하는 곳으로 점프합니다 . 그러면 다음이 생성됩니다.[..]
Changing Directories
AUTO_CD (-J)
If a command is issued that can't be executed as a normal command, and the command is the name of a directory, perform the cd command to that directory.
[..]
이 옵션은 설정을 해제할 수 있습니다 unsetopt AUTO_CD
.
제대로 닫아
다음과 같이 설명된 oh-my-zsh를 사용하고 있습니다."zsh 구성 관리를 위한 커뮤니티 기반 프레임워크"에는 120개 이상의 선택적 플러그인(rails, git, OSX, 허브, capistrano, Brew, ant, macports 등)이 포함되어 있습니다.
따라서 다음은 프레임워크에 따라 옵션을 활성화/비활성화하는 방법을 알아내는 것입니다.
이것readme.textile 파일플러그인 활성화/비활성화를 나타내는 기본 방법은 .zshrc의 항목입니다. plugins=(git osx ruby)
어떤 플러그인이 AUTO_CD 옵션을 사용하는지 알아보세요. 맨페이지에서 알 수 있듯이 -J 스위치 또는 AUTO_CD를 사용하여 호출할 수 있습니다. oh-my-zsh는 github에서 사용할 수 있으므로 검색하면 파일이 나타납니다 lib/theme-and-appearance.zsh
. 전체 플러그인 "테마 및 모양"을 비활성화하지 않으려면 unsetopt AUTO_CD
.zshrc에 플러그인을 추가하세요. 프레임워크를 업데이트하면 변경 사항이 손실되므로 oh-my-zsh 파일을 직접 수정하지 마십시오.
실행 파일을 직접 호출하면 안 되는 이유
세 번째 문제는 바이너리를 직접 실행하는 방법입니다. 예를 들어 "./do-something"처럼 접두사 "./"를 사용하여 경로를 통해 바이너리를 실행해야 합니다. 이는 일종의 보안 기능이므로 변경해서는 안 됩니다. USB 스틱을 삽입하고 마운트한 후 "ls"를 사용하여 확인하세요. 홈 디렉토리를 삭제한 "ls"라는 실행 파일이 있는 경우 $PATH의 순서를 덮어쓰게 되므로 모든 것이 사라질 것입니다.반복적으로 호출되는 명령이 있는 경우 .zshrc에 별칭을 설정하는 것이 일반적인 해결 방법입니다.
답변2
이것은 나에게 효과적입니다.
unsetopt autocd