Untitled
unknown
plain_text
5 months ago
3.8 kB
2
Indexable
### exemple if \#!/bin/bash if [ $# != 1 ] then echo "pas de parametres" exit 1 elif [ ! -e $1 -o ! -f $1 ] then echo "pas de fichier" exit 1 elif [ ! -d ".poubelle" ] then mkdir .poubelle fi echo "prog" mv $1 .poubelle/ if [ $# -eq 5 ] ### exemple case #!/bin/bash case $2 in "+") echo ` expr $1 + $3 `;; "-") echo ` expr $1 - $3 `;; '*') echo ` expr $1 \* $3 `;; "/") echo ` expr $1 / $3 `;; "%") echo ` expr $1 % $3 `;; *) echo opérateur inconnu esac ### exemple for #!/bin/bash nb=0 for i in ` echo $1 | sed 's/\(.\)/\1 /g' ` do case $i in [aeiouy]) nb=`expr $nb + 1 `;; esac done echo Le nombre de voyelle est de $nb for dans un range : for i in {1 ..5}; do echo $i; don; ### Exemples grep grep ^[aA] fichier.txt \ lignes commençant par a ou A grep es$ fichier.txt \ lignes finissant par es grep [^\.,\;:?\!]$ fichier.txt \ lignes finissant par de la ponctuation grep ''[^[punct]]$'' fichier.txt \ pareil grep ^[ra-m] fichier.txt \lignes commençant par r ou lettre de a à m grep ^[^aeiouAEIOU].*?$ fichier.txt \ lignes commençant par voyelle et finissant par un ? ### SED + GREP cat fichier.txt | sed 's/ /\n/g' | grep -E ''^[a-zA-Z]{6}'' \ MOTS COMMENCANT PAR AU MOINS 6 LETTRES cat fichier.txt | sed 's/ /\n/g' | grep -E "^[a-zA-Z]{3}([^a-zA-Z]|$)" \ MOTS COMMENTCANT PAR EAXACTEMENT 3 LETTRES cat fichier.txt | sed 's/ /\n/g' | grep -E "^r[[:alpha:]]{0,6}([^[:alpha:]]|$)" \ MOTS COMMENCANT PAR UN "r" MAX 6 LETTRES cat fichier.txt | sed 's/ /\n/g' | grep -E ''^[a-e](re|gu)'' \ MOTS COMMENCANT PAR UNE LETTRE ENTRE A ET ET PUIS PAR RE OU GU ### sed 1- sed 's/^ *//g' fichier.txt \Supprime les espaces en début de ligne 2- sed 's/^/ /g' fichier.txt \ affiche 3 espaces au début de chaque ligne 3- ls *.c | sed 's/\.c$//' | sed 's/^\(.\).*\(.\).$/\1\2/' (ou ls | grep ''\.c$'' ….) \ affiche la liste des fichiers .c en concervant uniquement le premier et l'avant dernier car du nom 4- ls -l | grep "^-" | sed 's/^\([^ ]*\).*\( [^ ]*\)$/\1 → \2/' \ lsite des fichiers du répertoire courant avec permissions et noms du fichier séparés par -> ### FIND 1- find . -type f -perm -002 2> /dev/null \ fichiers sur lesquels les autres peuvent écrire 2- find . -type f -perm -002 -mmin -2 2> /dev/null \ 1 + modifiés y a moins de deux minutes 3- find . -type f -size +100k -exec file {} \; \ taille supérieur ) 100KO + affiche type 4- find . -type f -name ''*.c'' | tee fichiers.txt | wc -l \ fichiers d'extension .c nom inséré dans un fichier txt puis print nombre fichier trouvé (word count) 5- find . -type f \( -name 'file*' -o -name 'var*' \) -name '*.tx[ab]' -exec chmod go-rwx {} \; \fichiers dont le nom commence par file ou var et l'extension est txt/txa, modifie leur perm en supprimant tous les droits aux groups et autres find . -type f \( -name 'file*' -o -name 'var*' \) -a \( -name '*.txa' -o -name '*.txb' \) -exec chmod go-rwx {} \ ### trucs au pif man !!!!!! export val="oui" ls -la chmod 777 test.txt chmod uo+r test.txt chmod g= test.txt cat fichier touch fichier mkdir dossier rm fichier cd cp mv alias ma_commande=''commande + options'' ~/.profile ou ~/.bash_profile puis ~/.bashrc uname cut ### Classes prédéfinies [[:alpha:]] n'importe quelle lettre [[:digit:]] n'importe quel chiffre [[:xdigit:]] caractères héxadécimaux [[:alnum:]] n'importe quelle lettre ou chiffre [[:space:]] n'importe quel espace blanc [[:punct:]] n'importe quel signe de ponctuation [[:lower:]] n'importe quelle lettre en minuscule [[:upper:]] n'importe quelle lettre capitale [[:blank:]] espace ou tabulation [[:graph:]] caractères affichables et imprimables [[:cntrl:]] caractères d'échappement [[:print:]] caractères imprimables exceptés ceux de contrôle
Editor is loading...
Leave a Comment