Como você disse, zsh
é semelhante em muitos aspectos a bash
. Ele tem alguns recursos que você não encontrará em bash
e pode ser estendido de maneiras poderosas. Não pense em se mover como um tipo de revolução, mas sim como uma série de passos evolucionários que o ajudam em seu trabalho diário. Aqui estão algumas dicas do meu .zshrc
. Embora você diga que prefere conselhos únicos, este post é uma lista longa. Ainda assim, é uma boa ideia percorrer os pontos um por um. Basta adicionar os bits interessantes ao seu ~/.zshrc
e recarregar com source ~/.zshrc
. Uma dica final: aprenda as combinações de teclas dos atalhos de teclado padrão do zsh
("Emacs"): ^A ^E ^W Alt-F Alt-B Alt-P ^L ^R
. Você pode substituir Alt
por dois toques de tecla separados: Alt-P
é equivalente a ESC
P
.
Isso oferece uma conclusão de tabulação mais extensa.
autoload -U compinit
compinit
Conclusão de tabulação de ambas as extremidades.
setopt completeinword
O preenchimento de tabulação não diferencia maiúsculas de minúsculas.
zstyle ':completion:*' matcher-list 'm:{a-zA-Z}={A-Za-z}'
Melhor conclusão para killall.
zstyle ':completion:*:killall:*' command 'ps -u $USER -o cmd'
Altera a definição de "palavra", por ex. com ^ W.
autoload select-word-style
select-word-style shell
Cores para ls.
if [[ -x "'whence -p dircolors'" ]]; then
eval 'dircolors'
alias ls='ls -F --color=auto'
else
alias ls='ls -F'
fi
Atalhos para ls.
alias ll='ls -l'
alias la='ls -a'
Um histórico para todos os shells abertos; armazene 10.000 entradas. Isso faz disso uma ajuda útil para encontrar os comandos que você usou da última vez para ./configure
, etc. Use Alt-P (encontre o comando que começa assim) e ^ R (procure na história) livremente.
HISTFILE=~/.zhistory
HISTSIZE=SAVEHIST=10000
setopt sharehistory
setopt extendedhistory
Habilita todos os tipos de globbing estendido, como ls ** / * .txt (localizar todos os arquivos de texto), ls -d *(D)
(mostrar todos os arquivos incluindo aqueles que começam com "."). Para saber mais, acesse man zshexpn
, seção "FILENAME GENERATION".
# superglobs
setopt extendedglob
unsetopt caseglob
Isso é útil para lembrar comandos em seu histórico sem executá-los.
setopt interactivecomments # pound sign in interactive prompt
Digite ".." em vez de "cd ..", "/ usr / include" em vez de "cd / usr / include".
setopt auto_cd
Agradável prompt.
PS1='[%T] %n@%m:%~# '
Exibir estatísticas de uso da CPU para comandos que levam mais de 10 segundos
REPORTTIME=10
Alguns comandos que você usa extensivamente no Ubuntu.
alias 'a=sudo aptitude'
alias 'ai=sudo aptitude install'
alias 'ar=sudo aptitude remove'
alias 'au=sudo aptitude update'
alias 'ag=sudo aptitude safe-upgrade'
alias 'as=apt-cache search'
alias 'aw=apt-cache show'
Lista os pacotes classificados por seu tamanho - útil ao decidir quais pacotes estão ocupando seu espaço em disco.
function apt-list-packages {
dpkg-query -W --showformat='${Installed-Size} ${Package} ${Status}\n' | grep -v deinstall | sort -n | awk '{print $1" "$2}'
}