dimanche 4 mars 2012

Commande sed, cut et sort


sed

Remplacement:
#sed -e "s/a-remplacer/nouveau/" nomdufichier

Remplacer toutes les occurences:
#sed -e "s/a-remplacer/nouveau/g" nomdufichier

Afficher une ligne particulière en utilisant son numéro (dans l'exemple la ligne 355)
# sed -n 355p nomdufichier.txt

Supprimer les lignes vides
# sed -e '/^$/d' NomFichier


Supprime les lignes du fichier fic qui commence par #
$ sed -e '/^#/d' fic

Affiche les lignes du fichier fic qui commence par #
$ sed -e '/^#/p' fic

Afficher les dix premières lignes du fichier passwd
[bob@centos ~]$ sed -n '1,10 p' /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
news:x:9:13:news:/etc/news:
[bob@centos ~]$



cut
Affiche uniquement certaine colonne d'un fichier.
#cut -cNuméro-de-colonne fichier

Peut également afficher des champs (option -f). Le caractère de séparation (par défaut la tabulation) est modifié via l'option -d.

Exemple:
clem@eee-pc:~$ cut -d: -f1 /etc/passwd
root
daemon
bin
sys
sync
Affiche le nombre de groupes uniques utilisés dans /etc/passwd
[bob@centos ~]$ cut -d: -f4 /etc/passwd | sort -n | uniq | wc -l
29
[bob@centos ~]$

sort

Permet de faire des tris sur une colonne ou un champ.

Exemple:
clem@eee-pc:~$ cut -d: -f1 /etc/passwd | sort
avahi
avahi-autoipd
backup
bin
clamav

Tri par uid dans le fichier passwd
-n: tri numérique
-t: séparateur de champ
-k: le numéro du champ

[bob@centos ~]$ sort -n -t: -k3 /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
news:x:9:13:news:/etc/news:
uucp:x:10:14:uucp:/var/spool/uucp:/sbin/nologin

Bonus: uniq supprime les doublons.

Aucun commentaire:

Enregistrer un commentaire

Comment ajouter une route statique sur une distribution Linux Ubuntu

Pour ajouter une route statique au démarrage d'Ubuntu, voici le fichier à modifier. Dans l'exemple on ajoute une route pour joindre ...