일상적인 사용을 위해 zsh로 전환 할 가치가 있습니까? [닫은]
Mac OS X의 기본 셸은
bash
입니다. 일반적으로 사용하게되어 기쁩니다. 나는 당연한 것으로 받아들입니다. 그래도
더 많은
것을 자동 완성하면 정말 좋을 것
zsh
입니다.이 점에서 좋은 소식을 들었습니다 . 그러나 명령 줄의 수명이 그다지 나쁘지 않기 때문에 명령 줄 사용을 조금씩 향상시키기 위해 설정을 다루는 데 시간을 할애하지 않습니다.(알다시피,
bash
더 똑똑하게 자동 완성되도록 구성 할 수도 있습니다. 그것은 내가 열망하지 않은 구성입니다.)
zsh
소수의 경우에도로 전환하면 인생이 더 쉬워 집니까? 아니면
왜
더 좋은지 배우기 위해 시간을 내면 더 나은 껍질 입니까? (예도 좋을 것입니다
:)
)
@
와 @
는 각각을 고수
bash
하고 전환 해야하는 두 가지 이유를 제시 합니다
zsh
. 둘 다 조사해야 할 것 같습니다! 오 잘
:)
논쟁의 양쪽에서 의견을 가진 사람이 있습니까?
평상시 사용하려면 bash를 고수하고 bash 완성을 설치하는 것이 좋습니다. 설치는 매우 쉽습니다.
http://www.caliban.org/bash/index.shtml#completion
에서 bash-completion-20060301.tar.gz를 가져 와서 추출하십시오.
tar -xzvf bash-completion-20060301.tar.gz
그런 다음 bash_completion / bash_completion 파일을 / etc에 복사하십시오.
sudo cp bash_completion/bash_completion /etc
암호를 묻는 메시지가 나타납니다. 추가 완료 스크립트에 대해 /etc/bash_completion.d 디렉토리를 만들고 싶을 것입니다 (예 : git 완료 스크립트가 있습니다).이것이 끝나면 마지막 단계는 홈 디렉토리의 .bash_profile 파일이
if [ -f /etc/bash_completion ]; then
. /etc/bash_completion
fi
로그인 할 때 완성 파일을로드하십시오. 테스트하려면 새 터미널을 열고 cvs에서 완료하면 완료 목록에 cvs 옵션이 표시됩니다.
개인적으로 저는 zsh를 좋아합니다. 일반적으로 재귀 globbing과 같은 작업을 빠르게 수행하기 전까지는 bash와 bash의 차이점을 알지 못할 것입니다.
**/*.c
예를 들어.
또는 접미사 별명을 사용하여 특정 프로그를 다른 접미사와 연관시켜 직접 "실행"할 수 있습니다. 아래의 별칭을 사용하면 프롬프트에서 C 소스 파일을 "실행"할 수 있습니다.
./my_program.c
– 입력 한 것처럼 정확하게 작동합니다
vim ./my_program.c
. (파일 아이콘을 두 번 클릭하는 것과 동일합니다.)
alias -s c=vim
또는 오늘 수정 된 파일 이름을 인쇄하십시오.
print *(e:age today now:)
bash에서 이러한 모든 것을 할 수는 있지만 zsh에 대한 나의 경험은 내가하고 싶은 일이 있으면
에서 찾을 수 있다는 것입니다 . 또한 '
'라는 책이 정말 유용하다는 것을 알았습니다 .엄청나게 많은 옵션을 마음으로 가지고 노는 것도 좋은 재미입니다!
zsh로 전환하십시오. 다음에 액세스 할 수 있습니다.
zmv
: 당신은 할 수 있습니다 :zmv '(*).mp3' '$1.wma'
수천 파일에 대해.zcalc
:보다 편안한 계산기bc
.zparseopts
: 스크립트에 주어진 임의의 복잡한 옵션을 구문 분석하기위한 하나의 라이너.autopushd
: 항상 이전 디렉토리로 다시 변경popd
한 후에 수행 할 수 있습니다cd
.- 부동 소수점 지원. 때때로 필요합니다.
- 지원을 해시합니다. 때로는 주요 기능 일뿐입니다.
ZSH를 사용하려는 것이 더 나은 완성이라면 구성이 매우 쉽습니다. 이것을 ~ / .zshrc에 넣으십시오.
autoload -U zutil # [1]
autoload -U compinit # [2]
autoload -U complist # [3]
compinit
그러나 ZSH의 다른 모든 훌륭한 기능을 확인하는 것이 좋습니다. 위의 예제는 완료가 완료된 매우 일반적인 프롬프트를 제공합니다. 구성을 피하고 싶지는 않지만 ZSH가 무엇을 할 수 있는지 알고 싶다면 Google에서 "zshrc"를 시작하면 구성을 사용하여 시작할 수 있습니다.
- [1] : http://zsh.sourceforge.net/Doc/Release/Zsh-Modules.html#The-zsh_002fzutil-Module
- [2] : http://zsh.sourceforge.net/Doc/Release/Completion-System.html#Initialization
- [3] : http://zsh.sourceforge.net/Doc/Release/Zsh-Modules.html#The-zsh_002fcomplist-Module
zsh에는 콘솔 GUI 구성이 있습니다. 구성 파일을 사용하지 않고도 매우 빠르고 쉽게 설정할 수 있습니다. 나는 당신이 그것을 설정하는 데 많은 시간이 필요하다고 생각하지 않을 것입니다. 아마도 기본값을 사용하면 10 초가 걸릴 것이므로 계속 시도하십시오.
Staale은 zsh를 처음 실행할 때 자동 실행되는 프로그램과 같은 마법사 (CUI)에 대해 이야기하고 있습니다. 몇 가지 질문에 답하고 기본값을보고 변경하십시오.IBM developerWorks는 zsh에 대한 훌륭한 자원을 보유하고 있습니다.나는 매우 고급 기능을 사용하지 않았으며 지금까지 나는 누군가가 배쉬에서 오는 것을 방해 해야하는 심각한 차이점을 발견하지 못했습니다.몇 가지 예 :
- !? pattern <Tab>은 히스토리 일치 패턴의 마지막 명령으로 자동 완성됩니다. 매우 유용한.
- RHS에서 프롬프트를 구성 할 수 있습니다. 한 가지 용도는 왼쪽에 고정 너비 프롬프트를 유지하여 pwd (또는 가변 너비)를 오른쪽 프롬프트로 표시하는 동안 모든 명령을 깔끔하게 정렬하는 것입니다.
- 여러 파일에서 입력을 리디렉션 할 수 있습니다 (이미 시도해보십시오) : cat <file1 <file2 <file3
참고 URL :
https://stackoverflow.com/questions/43321/worth-switching-to-zsh-for-casual-use
'programing' 카테고리의 다른 글
같은 구조체에 값과 해당 값에 대한 참조를 저장할 수없는 이유는 무엇입니까? (0) | 2020.05.14 |
---|---|
@try-Objective-C에서 catch 블록 (0) | 2020.05.14 |
Firefox 및 / 또는 IE 10에서 HTML 5 입력 유형 = "날짜"를 얻는 방법 (0) | 2020.05.14 |
“ng-bootstrap”과“ngx-bootstrap”의 차이점은 무엇입니까? (0) | 2020.05.14 |
MongoDB-문서 배열의 객체 업데이트 (중복 업데이트) (0) | 2020.05.14 |