Shell secours » Historique » Révision 8
Révision 7 (Geoffroy Desvernay, 30/01/2014 15:32) → Révision 8/16 (Julien Enselme, 31/01/2014 17:48)
Liste de commandes pour des actions spécifiques. Pas/peu de détails/explications, [[Petit precis de shell|prérequis de shell]] supposés connus. {{toc}} h1. Générer des nombres aléatoires * @$RANDOM@ (*bash uniquement*) : tire un nombre aléatoirement entre 0 - 32767 * @fortune | cksum | cut -f1 -d" "@ : si RANDOM n'est pas disponible, la commande @fortune@ qui tire aléatoirement un proverbe l'est peut être. On en prend la somme pour obtenir un nombre. * @seed=`( echo $$ ; time ps ; w ; date ) | cksum | cut -f1 -d" " `@ : utilise la date où le PID du dernier processus. * @dd if=/dev/urandom count=1 2> /dev/null | cksum | cut -f1 -d" "@ : utilise l'entrée d'entropie du noyau. C'est la meilleur méthode, la plus robuste pour générer de l'aléatoire. h1. Prendre les x caractères d’une chaîne @cut -cN-M@ h1. Revenir dans le répertoire précédent @cd -@ h1. Vérifier paramètre non passé @! -z $2@. L'option -n ne semble pas avoir le résultat attendu. h1. Trier @sort@ h1. Compter compter * @wc@ : pour les mots, caractères, nombres de lignes * @let@ ou @$(( 6+8 )) : pour les opérations mathématiques h1. Savoir si une chaîne est contenue dans une autre * @[[ reg_exp =~ contenant ]]@ *bash uniquement* * @grep -q "reg_exp" chaine@ h1. Renommer les fichiers en fonction d’une expression régulière <pre> <code class="bash"> for file in `ls` ; do a=`echo $file | sed 's/\(.*\)\.dump\(.*\)\.sql/\2.\1.sql/'` mv $file $a done </code> </pre> On peut également utiliser Emacs. h1. Faire une copie statique d’un site wget -mkKE assos.centrale-marseille.fr/NOM