Dicas Debian / Ubuntu

Incrementando o TAB COMPLETION
No Debian assim como no Ubuntu há um arquivo que
auxilia na complementação do TAB, para usa-lo faça

# se houver o arquivo /etc/bash_completion use:

if [ -f /etc/bash_completion ]; then
. /etc/bash_completion
fi




Esta dica me lembra uma discussão "amigável" na lista de shell script
do yahoo na qual um membro da lista perguntou como fazer para fazer
um script usar outro arquivo como uma include, a dica é esta

. /caminho/arquivo

Assim quando o script rodar e chegar à linha acima ele vai ler o arquivo
e executar o seu conteúdo

Extraindo um tar.gz do jeito certo
Ao invés de fazer:

tar zxvf arquivo.tar.gz cp -R arquivo /local

faça:

tar zxvf arquivo.tar.gz -C /local

O arquivo já será descompactado no local certo sem a necessidade
do "cp" .

Criando um arquivo rapidinho

[ -d dir ] || mkdir dir ; cd dir

Permitindo somente uma instância de um script
Às vezes você tem um script e quer que ele não possa ser executado
mais de uma vez ao mesmo tempo. A solução
 LOCK_FILE=/tmp/.lock

(set -C; : > $LOCK_FILE) 2> /dev/null
if [ $? != "0" ]; then
echo "Lock File exists - exiting"
exit 1
fi

# Do useful stuff

trap 'rm $LOCK_FILE' EXIT

Permitindo a execução somente pelo root
Há scripts que só podem ser executados pelo root
para verificar faça
Procurando pacotes apt
apt-cache search aspell | grep 'pt-br'

resultado:
aspell-pt-br - Brazilian Portuguese dictionary for GNU Aspell

Leia também um excelente artigo da "Revista do Linux" sobre grupos de comandos e expansão de strings neste link.

No artigo citado acima descobri que posso agrupar comandos sem chamar subshells usando chaves, veja:
# VAR="ANTES";(VAR="DEPOIS";VAR="ADIANTE";); echo $VAR
ANTES

# VAR="ANTES";{VAR="DEPOIS";VAR="ADIANTE";}; echo $VAR
ADIANTE
Perceba que o agrupamento de comandos com chaves preserva as variáveis, daí se conclui que usando chaves não é criado um subshell.

Visite o site da Revista do linux:

Referências:

Nenhum comentário:

Postar um comentário

Insira seu comentário - O mesmo será submetido à aprovação!

linux-cookbook

Grupos do Google
Participe do grupo linux-cookbook
E-mail:
Visitar este grupo