Vous n'êtes pas identifié(e).
L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT →
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente Prochaine révision Les deux révisions suivantes | ||
doc:systeme:cut [03/07/2014 00:06] 127.0.0.1 modification externe |
doc:systeme:cut [17/04/2015 19:07] milou ancienne révision (08/08/2014 10:33) restaurée |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | ====== CUT ====== | + | ====== cut ====== |
+ | |||
+ | * Objet : cut | ||
+ | * Niveau requis : {{tag>avisé}} | ||
+ | * Commentaires : //Recherche par sélection de sections spécifiques dans un fichier. // | ||
+ | * Débutant, à savoir : [[:doc:systeme:commandes:le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !]] :-) | ||
+ | * Suivi : {{tag>à-tester}} | ||
+ | * Création par [[user>smolski]] 11-06-2010 | ||
+ | * Testé par [[user>smolski]] 11-06-2010 | ||
+ | * Commentaires sur le forum : [[http://debian-facile.org/viewtopic.php?id=2669 | Lien vers le forum concernant ce tuto]]((N'hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !)) | ||
+ | |||
+ | |||
+ | ===== Introduction ===== | ||
La commande ''cut'' permet la recherche par sélection de sections spécifiques dans un fichier. | La commande ''cut'' permet la recherche par sélection de sections spécifiques dans un fichier. | ||
Ligne 5: | Ligne 17: | ||
Pour les exemples, nous utiliserons le fichier /etc/passwd. \\ | Pour les exemples, nous utiliserons le fichier /etc/passwd. \\ | ||
Affichage sans sélection avec [[:doc:editeurs:less | la commande less]] : | Affichage sans sélection avec [[:doc:editeurs:less | la commande less]] : | ||
+ | <code user>less /etc/passwd</code> | ||
<code> | <code> | ||
- | $ less /etc/passwd | ||
root:x:0:0:root:/root:/bin/bash | root:x:0:0:root:/root:/bin/bash | ||
daemon:x:1:1:daemon:/usr/sbin:/bin/sh | daemon:x:1:1:daemon:/usr/sbin:/bin/sh | ||
Ligne 22: | Ligne 34: | ||
^ Option ^ Signification ^ | ^ Option ^ Signification ^ | ||
- | |-c1-5 | Permet de sélectionner les colonnes 1 à 5.| | + | |-c1-5 |Permet de sélectionner les colonnes 1 à 5. | |
- | |-c14- | Permet de sélectionner de la colonne 14 à la dernière.| | + | |-c14- |Permet de sélectionner de la colonne 14 à la dernière. | |
- | |-c1-3,14-18 | Permet de spécifier plusieurs plages de colonnes.| | + | |-c10-14|Permet de sélectionner de la colonne 10 à la colonne 14| |
+ | |-c1-3,14-18 |Permet de spécifier plusieurs plages de colonnes. | | ||
==== Exemple option -c : ==== | ==== Exemple option -c : ==== | ||
- | cut -c1 /etc/passwd | + | <code user>cut -c1 /etc/passwd</code> |
- | Affichera la première colonne du fichier ///etc/passwd//. | + | Affichera la première colonne du fichier ''etc/passwd''. |
- | <code> | + | <code user> |
$ cut -c1 /etc/passwd | $ cut -c1 /etc/passwd | ||
r | r | ||
Ligne 43: | Ligne 56: | ||
</code> | </code> | ||
- | ===== Option -f ===== | + | ===== Options -d et -f ===== |
- | N'afficher que les champs indiqués dans la liste sélectionnée. \\ | + | * option -d : Spécifier un séparateur de champs. |
- | À utiliser en complément de l'option ''-d'' suivante. | + | * option -f : N'afficher que les champs indiqués dans la liste sélectionnée. |
- | ===== Option -d ===== | + | <note tip> |
+ | __À savoir.__\\ | ||
- | On peut également spécifier un séparateur de champs avec l'option -d. | + | Par défaut, le délimiteur est l'espace ou la tabulation.\\ |
+ | * Si dans le fichier à traiter le séparateur n'est pas la tabulation, il faut indiquer le séparateur avec l'option ''-d''.\\ | ||
- | ==== Exemple option -d -f : ==== | + | * Les options ''-d'' et ''-f'' s'utilisent toujours en complément l'une de l'autre.\\ |
+ | -Si on utilise l'option -d seule, un message d'erreur apparaît,\\ | ||
+ | -Si on utilise l'option -f seule, la totalité du ficher s'affiche sans extraire de champ, ce qui n'a aucun intérêt. | ||
- | Dans le fichier /etc/passwd, afficher le //sixième// champ par ligne, dont le séparateur de champs est le caractére double point ('':'') : | + | * Il est possible de sélectionner plusieurs champs. |
+ | |||
+ | ^ ^ ^ | ||
+ | |cut -d'délimiteur' -f 1 | délimiteur et champ délimité n°1 | | ||
+ | |cut -d'délimiteur' f 2,6,...| délimiteur et champs délimités n°2 et n°6 | | ||
+ | |||
+ | |||
+ | </note> | ||
+ | |||
+ | ====Option -d -f : afficher un champ ==== | ||
+ | |||
+ | Dans le fichier /etc/passwd, afficher le //sixième// champ par ligne, dont le séparateur de champs est le caractère double point ('':'') : | ||
+ | <code user>cut -d: -f6 /etc/passwd</code> | ||
<code> | <code> | ||
- | $ cut -d: -f6 /etc/passwd | ||
/root | /root | ||
/usr/sbin | /usr/sbin | ||
Ligne 66: | Ligne 94: | ||
</code> | </code> | ||
+ | ====Option -d -f : afficher plusieurs champ ==== | ||
+ | Dans le fichier :etc/passwd, afficher le premier et le sixième champs par ligne, avec comme séparateur de champ le caractère double point ('':'') : | ||
+ | <code user>cut -d':' -f 1,6 /etc/passwd</code> | ||
+ | <code> | ||
+ | root:/root | ||
+ | daemon:/usr/sbin | ||
+ | bin:/bin | ||
+ | sys:/dev | ||
+ | games:/usr/games | ||
+ | .../... | ||
+ | </code> | ||
- | + | <note tip> | |
+ | Si l'on inverse l'ordre des champs sélectionnés ''-f 6,1'', cut les affichera malgré tout dans l'ordre du fichier. | ||
+ | </note> | ||