Oh-My-ZSH 를 사용하여 반복적 인 작업 부하를 완화합니다.
컴퓨터의 아무 곳에서나 프론트 엔드 디렉토리로 이동해야합니다. 이것이 내가 가진 것입니다 :
frontend(){
cd ~/Desktop/Work/Frontend
cd $1
}
이제
frontend
를 입력하면 잘 작동합니다.
또는
frontend myProject
그러나 모든 프로젝트 폴더에는
.m
와 같은 접미사가 붙습니다.
.tablet
등
어떻게 쓸 수 있나요 :
.something
가 뒤 따르는 폴더로 자동 이동하겠습니다.project.m
와 같은 여러 옵션이있는 경우 그리고project.tablet
)는 터미널에서 탭을 누르고 자동 완성에 대한 여러 옵션이 제공되는 경우와 비슷한 옵션을 묻는 메시지를 표시합니다.
내 질문이 이해되기를 바랍니다.
감사합니다.
- 답변 # 1
- 답변 # 2
AutoJump를 사용하는 것이 좋습니다
하지만 필요한 경우
# Define the main shell function. frontend(){ local BASEDIR=~/Desktop/Work/Frontend cd "$BASEDIR/${1:-}" } # Define the custom completion function. _frontend_completions() { local BASEDIR=~/Desktop/Work/Frontend # Initialize the array variable through which # completions must be passed out. COMPREPLY=() # Find all matching directories in the base folder that start # with the name prefix typed so far and return them. for f in "$BASEDIR/${COMP_WORDS[COMP_CWORD]}"*; do [[ -d $f ]] && COMPREPLY+=( "$(basename "$f")" ) done } # Tell bash to autocomplete directory names as returned by the # _frontend_completions() helper functoin when typing a command # based on the main shell function. complete -o filenames -F _frontend_completions frontend fe
를 사용하고 싶을 수도 있습니다.
당신의alias
에서처럼 추가 :~/.zshrc
alias fend='cd path/to/frontend'
- python : bashrc 또는 zshrc에 Pyenv 명령을 추가하시겠습니까?
- zsh : FZF 플러그인이 설치된 OHMYZ.SH로 고급 FZF_DEFAULT_COMMAND 환경 변수를 올바르게 작동 시키려면 올바르게 작동합니다.
- git : ZSH 및 Windows의 터미널 문제
- bash : 경로 변수에 대한 복합 구멍을 방지합니다
- macos : Mac OS의 ZSH에서 $ Path의 원인은 어디에 있습니까? 나는 그것을 .zshrc에서 찾을 수 없다
- python : 매크로에서 bash 및 zsh에 입력을 기다리는 명령을 상호 작용하거나 취소합니다.
- Live Persistence가있는 마이크로 SD 카드에 최소한의 UI가있는 Linux 터미널을 설치하려면 어떻게합니까?
- linux : bash &&zsh : 이전 명령 줄 참조 /반복 * 인수 * 여전히 동일한 줄을 만들 수 있지만
- zsh 반환 사례를 늘립니다. 정확한 일치를 선호합니다.
- Windows 터미널에서 Git Bash를 사용하는 문제
와이즈 비즈 찾기 먼저 해결책을 찾은 다음
zsh
해결책.업데이트:
bash
로 밝혀졌습니다 구현 (내장zsh
기반) )는compctl
보다 훨씬 간단합니다. 구현 (내장bash
기반) ).관심있는 코드를 파일에 저장하십시오 (예 :
complete
) 및소스(예 :frontend
) );대화식으로 또는 bash/zsh 프로필을 사용하는 것이 좋습니다.. ./frontend
에서 서브 디렉토리 이름 자동 완성 다음과 같이 작동합니다 :예 :
~/Desktop/Work/Frontend
Tab 키를 누릅니다.frontend myProject
그런 다음myProject
의 하위 디렉토리 이름과 접두사 일치 :일치 만 있으면
~/Desktop/Work/Frontend
전체 하위 디렉토리 이름으로 즉시 확장됩니다.그렇지 않으면 여러 개의 일치 항목이 있음을 나타내는 경고음이 울립니다.
myProject
: 일치하는 모든 하위 디렉토리의 이름이 바로 표시됩니다.zsh
: 탭다시를 눌러 일치하는 모든 하위 디렉토리의 이름을 표시하십시오접두사가 일치 할 때까지 계속 입력 한 다음 Tab 키를 다시 누릅니다.
참고 :
<시간>bash
에서 , 여러 번 일치하는 항목을 나열하기 위해 Tab한 번만 누르면 셸 프로파일bash
에 다음을 추가하십시오. .zsh솔루션 :
<시간>bash솔루션 :
참고 :
# Define the shell function. frontend(){ cd ~/Desktop/Work/Frontend/"${1:-}" } # Tell zsh to autocomplete directory names in the same directory as # the function's when typing a command based on the shell function. compctl -/ -W ~/Desktop/Work/Frontend frontend
불행히도 인수를하지 않습니다-항상현재디렉토리에 대해 자동 완성됩니다. 따라서complete -o dirnames
와 결합하여 잠재적 일치 항목을 리턴하는 사용자 정의 쉘 함수 이 필요합니다.