Come dici tu, zsh
è simile sotto molti aspetti bash
. Ha alcune funzionalità che non troverai bash
e può essere estesa in modo potente. Non pensare di muoverti come una sorta di rivoluzione, ma piuttosto come una serie di passaggi evolutivi che ti aiutano nel tuo lavoro quotidiano. Ecco alcuni suggerimenti dal mio .zshrc
. Anche se dici di preferire singoli consigli, questo post è un elenco lungo. È comunque una buona idea esaminare i punti uno per uno. Basta aggiungere i bit interessanti al tuo ~/.zshrc
e ricaricare con source ~/.zshrc
. Un ultimo consiglio: imparare le sequenze di tasti di zsh
'default s ( 'Emacs') le scorciatoie da tastiera: ^A ^E ^W Alt-F Alt-B Alt-P ^L ^R
. È possibile sostituire Alt
con due tasti separati: Alt-P
è equivalente a ESC
P
.
Questo ti dà il completamento più ampio della scheda.
autoload -U compinit
compinit
Completamento della scheda da entrambe le estremità.
setopt completeinword
Il completamento della scheda dovrebbe essere sensibile al maiuscolo / minuscolo.
zstyle ':completion:*' matcher-list 'm:{a-zA-Z}={A-Za-z}'
Migliore completamento per killall.
zstyle ':completion:*:killall:*' command 'ps -u $USER -o cmd'
Modifica la definizione di "parola", ad es. Con ^ W.
autoload select-word-style
select-word-style shell
Colori per ls.
if [[ -x "`whence -p dircolors`" ]]; then
eval `dircolors`
alias ls='ls -F --color=auto'
else
alias ls='ls -F'
fi
Scorciatoie per ls.
alias ll='ls -l'
alias la='ls -a'
Una storia per tutte le shell aperte; memorizzare 10.000 voci. Questo lo rende un utile aiuto di memoria per trovare i comandi che hai usato l'ultima volta per ./configure
ecc. Usa Alt-P (trova il comando che inizia in questo modo) e ^ R (cerca nella storia) liberamente.
HISTFILE=~/.zhistory
HISTSIZE=SAVEHIST=10000
setopt sharehistory
setopt extendedhistory
Abilita tutti i tipi di globbing esteso, come ls ** / *. Txt (trova tutti i file di testo), ls -d *(D)
(mostra tutti i file inclusi quelli che iniziano con "."). Per saperne di più, vai alla man zshexpn
sezione "GENERAZIONE NOME FILENO".
# superglobs
setopt extendedglob
unsetopt caseglob
Ciò è utile per ricordare i comandi nella cronologia senza eseguirli.
setopt interactivecomments # pound sign in interactive prompt
Digita ".." invece di "cd ..", "/ usr / include" anziché "cd / usr / include".
setopt auto_cd
Bel prompt.
PS1='[%T] %n@%m:%~# '
Visualizza le statistiche di utilizzo della CPU per i comandi che richiedono più di 10 secondi
REPORTTIME=10
Alcuni comandi che usi ampiamente in 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'
Elenca i pacchetti ordinati in base alla loro dimensione, utile quando si decide quali pacchetti occupano spazio su disco.
function apt-list-packages {
dpkg-query -W --showformat='${Installed-Size} ${Package} ${Status}\n' | grep -v deinstall | sort -n | awk '{print $1" "$2}'
}