Commandes utiles Linux – bash

Tout administrateur sous linux se doit de travailler sous shell ou bash et certaines commandes sont indispensables.

Lorsqu’on a l’habitude de ces commandes utiles, on apprécie les retrouver  sous Windows, par exemple la recherche de fichiers est beaucoup plus efficace sous invite de commande qu’avec l’interface graphique Windows (explorateur), KDE, Gnome et autre, ceci est valable pour le Mac qui utilise Unix comme noyau de base.

Voyons quelques applications pratiques avec le Shell, on traitera les commandes sous DOS dans un autre article.

Aussi cette présente page sera mise à jour avec de nouveaux exemples. Vous êtes invités à poster vos commentaires. Cette page est destinée à lister les commandes utiles et afin de bien comprendre le contenu, il est recommandé d’avoir un minimum de notions sur linux.

AncreDécouvrir le système

Les commandes bash peuvent vous donner toutes les informations relatives à votre système y compris les détails de votre matériel.

Trouver la version de votre système:

# cat /proc/version

Et quelques autres informations utiles:

# cat /proc/meminfo
# cat /proc/cpuinfo
# cat /proc/meminfo
# cat /proc/zoneinfo
# cat /proc/mounts

Testez donc les commandes ci dessus et vous trouverez des informations intéressantes. Inutile de télécharger un logiciel particulier pour trouver ces détails.

La mémoire vive utilisée:

# free -m

Les processus en cours:

# ps -aux

Vous pouvez utiliser la commande top également pour ranger les processus par ordre du plus important au moins important (temps réel), il vous faut le programme installé.

Pour la taille du disque dur et son utilisation, voici les commandes utiles:

# df -h
# du -ksh /disk2/home
# du -h filename

Afin de lister les fichier d’un dossier avec la taille en Mo:

# ls -lh

AncreOpérations de recherche

GREP est une des commande essentielle pour tout administrateur, pour tous les détails de cette commande, vous pouvez consulter le man.

Dans un fichier:

# grep pattern fichier1 fichier2

Ici vous faites une recherche du mot pattern dans le fichier 1 et 2.

Sur plusieurs fichiers ou lignes:

# ps -aux | grep http
# grep « Call Trace » /var/log/messages

pour analyser les logs, GREP est un outil incontournable.

FIND est également trés utile et il est inconcevable d’utiliser linux sans connaitre find.

Pour trouver les fichiers finissant par stat dans le dossier /usr:

# find /usr -name *stat

Et trouver les fichiers du dossier /home/mail qui ont été modifiés il y a plus de 60 jours:

# find /home/mail -mtime +60

Et supprimer les fichiers d’un répertoire plus anciens de 10 jours :

# find /home/rep/ -type f -mtime +10 -print | xargs rm

AncreModification de fichiers

Ajouter une ligne à un fichier:

# echo « salut » >> fichier.txt

RENAME

Renommer tous les fichiers jpg en retirant le schéma ‘exemple_’:

# rename « s/exemple_*//g » *.jpg

SED

Pour changer des schémas dans un fichier:

$ sed ‘s/le/de/g’ test.txt

cette commande remplace tous les ‘le’ en ‘de’ dans le fichier test.txt

Autre exemple qui remplace des schémas d’un fichier et les inscrit dans un nouveau fichier:

 # sed ‘s/<request>//g’ fichier.xml > fichier_1.xml

Et pour faire la même chose mais en écrasant le fichier à changer avec la mise à jour pour l’ensemble des fichiers d’un dossier:

# for i in `ls`;do sed ‘s/<\/fx_request>//g’ $i > $i; done

Cette fois sur toutes les lignes en retirant les caractères avant le shéma ‘A:’:

# cat emails.txt | sed -e ‘s/.*A://’ -e ‘s/$//’ > emails1.txt

D’autres exemples seront disposés plus tard et en fonction des commentaires.

AncreCompression

On a souvent besoin de compresser des fichiers et de les décompresser également. Par exemple lorsqu’on télécharge une application qu’il nous faut déployer et construire en assemblant…

La commande TAR est sans doute la plus populaire et couplée avec gzip on obtient du tar.gz:

# tar -cf fichier.tar dossier

Cette commande permet de compresser un dossier en un fichier avec extension tar.

la même commande mais en construisant un tar.gz:

# tar cf – /dossier | gzip > /dossier/fichier.tar.gz

Et pour décompresser, rien de plus simple:

# tar -zxf fichier.tar.gz

J’indiquerai prochainement comment compresser un fichier important en plusieurs parties.

AncreCryptage

Pour encoder un fichier pour un transfert sur Internet, voici une commande qui utilise openssl:

# openssl enc -aes-256-cbc -salt -in /dossier/fichier.tar.gz -out /dossier/fichier.enc -pass pass:motdepasse

Et pour décoder le fichier encodé:

# openssl enc -d -aes-256-cbc -in fichier.enc -out fichier.tar.gz -pass pass:motdepasse

Je complèterai cette page au fur et à mesure des commentaires et besoins de chacun. Personnellement je reviens régulièrement à ces notes lorsque j’ai un trou de mémoire.

Laisser un commentaire