Bash

De Bricosoft.

Une bonne Bash ça peut toujours servir pour couvrir quelque chose.

Unix bashing time!

Sommaire

[modifier] CLI utiles ou pas

[modifier] Afficher les dix derniers fichiers modifiés, sans backups

find . -print | [[xargs]] ls --color=none --sort=time -lgoh 2> /dev/null | grep -v "~" | head

[modifier] ~/.bashrc

#nettoie les fichiers de backup sous $HOME
 
nettoie() {
find ~ -name "*~" -exec rm {} \;
}

[modifier] ~/.bash_logout

Liste des choses à effectuer à la déconnexion, nettoyages, màj page web, etc.

[modifier] Verif host on line ou pas

if eval "ping -c 1 -w 5 $1 &>/dev/null"; then
    echo "$1 OK :)"
else
    echo "$1 KO :("
fi

ou, verifier si serveur web présent

netcat -zv $1 80

[modifier] set gid

Utile pour un dossier partagé samba :

chmod 2750 .

[modifier] Paste

fichier1.txt

1
2
3

fichier2.txt

a
b
c
$ paste fichier1.txt fichier2.txt
1   a
2   b
3   c

[modifier] antislash backslash pour ignorer l'alias

Avec des alias qui redefinissent une commande :

$ alias | grep ls=
alias ls='ls --color=auto'
$ ls /var/lock
apache2  logcheck   <--- c'est en bleu sisi!

Il suffit de faire préceder la commande d'un antislash pour ignorer l'option dans l'alias

$ \ls /var/lock
apache2  logcheck   <--- pas de bleu sisi regardez bien

[modifier] empêcher l'expand du tilde ~ lors de la complétion

Le tilde ~ s'expand en /home/toto dès qu'on utilise la complétion (tab), pour empêcher ça modifiez le fichier :

/etc/bash_completion

Dans la fonction _filedir() :

_filedir()
{ ...

Changez la ligne suivante en la commentant de :

_expand || return 0

en :

#_expand || return 0

au prochain shell cd ~ + TAB ne se transformera pas en cd /home/toto/ :

Mais ça peut provoquer des effets de bords avec des variables shell qui utilisent ~

Récupérée de « http://www.bricosoft.com/Bash »
Plus