Shell::Commande history
novembre 10, 2007
Sous fedora cette commande retient les 1000 dernières lignes d’exécution du shell. Pour changer cette valeur il faut modifier la variable d’environement HISTSIZE dans le fichier /etc/profile :
HISTSIZE=100000
Une autre option très intéressante : $HISTTIMEFORMAT
Retrouvez plus d’info sur cette note : http://blog.uggy.org/post/2006/07/05/98-petits-trucs-pour-configurer-l-historique-du-bash
Attention, un après usage de ces commandes, j’ai découvert que pour qu’elles soient effectives dans un terminal genre xterm il faut les placer dans le fichier ~/.bashrc, ça peut sembler normal … mais xterm ne récupère pas les infos dans profile. Peux être que ça ne me ferait pas de mal de relire le fonctionnement de tout cela ….
Bash::generateur de lettres aleatoires
novembre 5, 2007
Plus précisément, un générateur de ‘mot’ de n lettres. Je l’ai pondu pour obtenir une liste de mots aléatoires nécessaire à un projet.
Pour fonctionner il utilise principalement:
$RANDOM : renvoi un entier compris entre 0 et 32767
$(( EXPR )) : in interpréteur mathématique intégré au bash
${#VAR}: renvoi le nombre de caractères dans une chaîne bash (le length du bash)
${VAR:P:N} : renvoi une sous chaîne de la chaîne VAR qui commence au P ième caractère et de longueur N (substr du bash).
Il s’agit donc d’un petit concentré des essentiels du bash.
gen_word.sh [le nombre de lettres, 10 par défaut]
#!/bin/bash
N_LETTRES=10
if [ "$1" != "" ]
then
N_LETTRES=$1
fi
ALPHA=’abcdefghijklmnopqrstuvwxyz’;MOT=”"
for ((i = 0; i < $N_LETTRES; i += 1))
do
CHIFFRE=$(( $RANDOM % ${#ALPHA}));
printf ${ALPHA:$CHIFFRE:1};
done
printf “\n”
exit 0
Mod : la commande exit permet de terminer le processus.
un exit 0 en fin de script c’est un fin de processus correct et des exit 1,2,3 etc… pour stopper le
script avec erreur.
BASH::connection SSH sans taper le mot de passe
juillet 24, 2007
C’est un probleme connu, à moins d’utiliser un certificat, il est difficile de se connecter en ssh sans taper le mot de passe.
Le blog que j’ai cité tout à l’heure a une solution :
expect -c ’spawn ssh addrServeur cat /etc/passwd’ -c ‘expect password:’ -c ’send P4ssw0Rd\n’ -c ‘expect eof’
Source : http://unixjunkie.blogspot.com/2006/01/two-cool-bash-tricks.html
LIEN::Deux astuces Bash tirées d’un super blog !!
juillet 24, 2007
Voici juste un avant gout :
exec 5<> /dev/tcp/www.google.com/80 printf "GET / HTTP/1.0\n\n" >&5 cat <&5 exec 5>&-
et
diff <(find dir1) <(find dir2)
le blog :
http://unixjunkie.blogspot.com/
la page en question :
http://unixjunkie.blogspot.com/2006/01/two-cool-bash-tricks.html
Je conseil surtout la lecture des commentaires !!