Eu lido com muitas máquinas diferentes, então uma das minhas favoritas são aliases para cada máquina que eu preciso fazer SSH frequentemente para:
alias claudius="ssh dinomite@claudius"
Também é útil configurar teclas boas .ssh/config
e ssh para tornar o salto entre máquinas ainda mais fácil.
Outro dos meus apelidos favoritos é para mover diretórios:
alias ..="cd .."
alias ...="cd ../.."
alias ....="cd ../../.."
alias .....="cd ../../../.."
E alguns para variações comumente usadas de ls
(e erros de digitação):
alias ll="ls -l"
alias lo="ls -o"
alias lh="ls -lh"
alias la="ls -la"
alias sl="ls"
alias l="ls"
alias s="ls"
O histórico pode ser muito útil, mas, por padrão, na maioria das distribuições, seu histórico é deslumbrado com a saída de cada shell e, para começar, não é muito importante. Eu gosto de ter 10.000 linhas de história:
export HISTFILESIZE=20000
export HISTSIZE=10000
shopt -s histappend
# Combine multiline commands into one in history
shopt -s cmdhist
# Ignore duplicates, ls without options and builtin commands
HISTCONTROL=ignoredups
export HISTIGNORE="&:ls:[bf]g:exit"
Dessa forma, se eu souber que já fiz algo antes, mas não consigo lembrar os detalhes, um rápido history | grep foo
ajudará a estimular minha memória.
Muitas vezes eu me via canalizando a saída awk
para obter uma determinada coluna da saída, como df -h | awk '{print $2}'
para encontrar o tamanho de cada um dos meus discos. Para facilitar isso, criei uma função fawk
no meu .bashrc:
function fawk {
first="awk '{print "
last="}'"
cmd="${first}\$${1}${last}"
eval $cmd
}
Agora posso executar o df -h|fawk 2
que economiza um pouco de digitação.
Se você precisar especificar um delimitador ( por exemplo , awk -F:
para /etc/passwd
), essa função obviamente não pode lidar com isso. A versão ligeiramente revisada nesta essência pode lidar com awk
argumentos arbitrários antes do número do campo (mas ainda requer a entrada de stdin).