logo Debian Debian Debian-France Debian-Facile Debian-fr.org Forum-Debian.fr Debian ? Communautés logo inclusivité

Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

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 → ODT PDF Export

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

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:commandes:les-commandes-join-paste-split-et-nl [08/06/2014 08:24]
Hypathie [La commande nl]
doc:systeme:commandes:les-commandes-join-paste-split-et-nl [10/07/2014 08:57]
Hypathie [la commande fmt]
Ligne 1: Ligne 1:
-====== ​Les commandes : d'​autres commandes pour la gestion des fichiers-texte ======+====== ​D'​autres commandes pour la gestion des fichiers-texte ======
  
   * Objet : Voici d'​autres commandes pour la gestion de fichiers texte   * Objet : Voici d'​autres commandes pour la gestion de fichiers texte
-  * Niveau requis : {{tag>​débutant }} +  * Niveau requis : {{tag>grand-débutant }}
-  * Commentaires : //Contexte d'​utilisation du sujet du tuto. // FIXME+
   * Débutant, à savoir : [[:​doc:​systeme:​commandes:​le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !.]] :-)   * Débutant, à savoir : [[:​doc:​systeme:​commandes:​le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !.]] :-)
-  * Suivi : {{tag>en-chantier}} +  * Suivi : {{tag>à-placer}} 
-    * Création par **Hypathie** 07/06/2014+    * Création par [[user>Hypathie]] 07/06/2014
     * Testé par <...> le <...> FIXME     * Testé par <...> le <...> FIXME
-  * Commentaires sur le forum : [[url | Lien vers le forum concernant ce tuto]] ((N'​hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !)) FIXME+  * Commentaires sur le forum : [[http://​debian-facile.org/​viewtopic.php?​pid=92369#​p92369 ​| Lien vers le forum concernant ce tuto]] ((N'​hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !))
  
-**Nota :**+**Nota : ​Voici des commandes très simples d'​utilisation. ​**
  
 Contributeurs,​ les FIXME sont là pour vous aider, supprimez-les une fois le problème corrigé ou le champ rempli ! Contributeurs,​ les FIXME sont là pour vous aider, supprimez-les une fois le problème corrigé ou le champ rempli !
  
 ===== Introduction ===== ===== Introduction =====
-  *[[doc:​systeme:​commandes:​le_debianiste_qui_papillonne#​les-fichiers|Les autres commandes sur les fichiers]]\\ 
-  *[[doc:​systeme:​commandes:​creer#​trouver-un-fichier|Trouver un fichier]] 
-  *[[doc:​systeme:​expand|commande expand]] 
-  *[[doc:​systeme:​split|commande split]] 
  
 +Pour les commandes principales de gestion des fichiers : 
 +  * [[doc:​systeme:​commandes:​creer|Les commandes Linux de gestion des fichiers et répertoires]]
 +
 +Nous allons aborder quelques commandes complémentaires permettant de :
 +
 +  * améliorer l'​affichage : fnt ; nl
 +  * combiner le contenu de fichiers : join ; paste 
 +  * transformer le contenu de fichier : sort ; split ; tr ; uniq ; expand et unexpand
 +
 +
 +
 +===== la commande fmt=====
 +===Syntaxe ===
 +
 +  fmt [options] [fichier...]
 +  ​
 +=== Préparation===
 +Création du fichier "​~/​Essai-text-processing/​essai-fmt"​
 +
 +<code user>
 +cat > ~/​Essai-text-processing/​essai-fmt <<EOF
 +> chez debian-facile c'est facile ... très facile ... très très facile ... très très très très très très facile ... facile et encore facile !
 +> EOF
 +</​code>​
 +
 +===Affichage du contenu d'un fichier en respectant les mots ===
 +  * L'​affichage avec la commande "​cat"​ est parfois difficile à lire:
 +<code user>
 +cat ~/​Essai-text-processing/​essai-fmt
 +# Retour :
 +chez debian-facile c'est facile ... très facile ... très très facile ... très tr
 +ès très très très très facile ... facile et encore facile !
 +</​code>​
 +
 +  * Affichage avec la commande "​fmt"​ :
 +<code user>
 +fmt ~/​Essai-text-processing/​essai-fmt
 +# Retour :
 +chez debian-facile c'est facile ... très facile ... très très facile
 +... très très très très très très facile ... facile et encore
 +facile !
 +</​code>​
 +<​note>​
 +Par défaut, la commande "​fmt"​ affiche le contenu d'un fichier par ligne de 75 caractères maximum.
 +</​note>​
 +===Options utiles ===
 +  * -w : pour indiquer le nombre de caractère par ligne
 +<code user>
 +fmt -w 20 ~/​Essai-text-processing/​essai-fmt
 +# Retour :
 +chez debian-facile
 +c'est facile
 +... très facile
 +... très très
 +facile ... très
 +très très très
 +très très facile
 +... facile et
 +encore facile !
 +</​code>​
 +===Combiner fmt et less pour encore plus de lisibilité ===
 +<code user>
 +fmt -w 20 ~/​Essai-text-processing/​essai-fmt | less
 +# Retour :
 +chez debian-facile
 +c'est facile
 +... très facile
 +... très très
 +facile ... très
 +très très très
 +très très facile
 +... facile et
 +encore facile !
 +(END)
 +
 +</​code>​
 +  * Voir [[doc:​editeurs:​less| la commande less]]
 +
 +=====La commande nl =====
 +Permet de numéroter l'​affichage d'un fichier.
 +
 +===Syntaxe ===
 +
 +  nl [options] [fichier...]
 +
 +===Préparation ===
 +  * copie du fichier ~/.bashrc et visualisation :
 +
 +<code user>
 +cat ~/.bashrc >> ~/​Essai-text-processing/​bashrc-bis
 +</​code>​
 +  * comparons avec l'​affichage de less
 +<code user>
 +less ~/​Essai-text-processing/​bashrc-bis
 +</​code>​
 +Extrait du retour :
 +<code user>
 +# ~/.bashrc: executed by bash(1) for non-login shells.
 +# see /​usr/​share/​doc/​bash/​examples/​startup-files (in the package bash-doc)
 +# for examples
 +
 +# If not running interactively,​ don't do anything
 +case $- in
 +    *i*) ;;
 +      *) return;;
 +esac
 +[...]
 +</​code>​
 +
 +===Affichage numéroté ===
 +<​code>​
 +nl ~/​Essai-text-processing/​bashrc-bis
 +</code user>
 +Extrait du retour :
 +<​code>​
 +     1 # ~/.bashrc: executed by bash(1) for non-login shells.
 +     2 # see /​usr/​share/​doc/​bash/​examples/​startup-files (in the package bash-doc)
 +     3 # for examples
 +       
 +     4 # If not running interactively,​ don't do anything
 +     ​5 case $- in
 +     ​6  ​   *i*) ;;
 +     ​7  ​     *) return;;
 +     ​8 esac
 + [...]
 +</​code>​
 +
 +===Pour encore plus de lisibilité ===
 +
 +<code user>
 +fmt -w 65 ~/​Essai-text-processing/​bashrc-bis | nl ~/​Essai-text-processing/​bashrc-bis | less
 +</​code>​
 +
 +Extrait du retour :
 +
 +<​code>​
 +     ​1 ​ # ~/.bashrc: executed by bash(1) for non-login shells.
 +     ​2 ​ # see /​usr/​share/​doc/​bash/​examples/​startup-files (in the package bash-doc)
 +     ​3 ​ # for examples
 +       
 +     ​4 ​ # If not running interactively,​ don't do anything
 +     ​5 ​ case $- in
 +     ​6 ​     *i*) ;;
 +     ​7 ​       *) return;;
 +     ​8 ​ esac
 +       
 +[...]
 +</​code>​
 +
 +<​note>​
 +Par défaut la commande nl numérote les lignes non-vides.\
 +  * Quelques options :\\
 +    - -b : numérotation des lignes vides
 +    - -b -t[expression régulière] : affiche tout mais numérote les lignes qui correspondent à l'​expression régulière
 +    - -n ln : affichage avec numérotation tout à droit.
 +    - -n rn : affichage par défaut, c'​est-à-dire avec une tabulation à droite avec le chiffre de la numérotation.
 +    - -n rz : affichage de zéro entre le bord droit et le chiffre de numérotation ​
 +  * voir man nl pour plus de meilleures explications.
 +</​note>​
 =====La commande join ===== =====La commande join =====
 ===Syntaxe de la commande join === ===Syntaxe de la commande join ===
Ligne 470: Ligne 624:
 </​code>​ </​code>​
  
-===== la commande fmt=====+=====Les commandes expand et unexpand ​===== 
 +====unexpand ==== 
 +La commande "​unexpand"​ convertit les groupes de 7 espaces en 1 tabulation 
 ===Syntaxe === ===Syntaxe ===
  
-  ​fmt [options] [fichier...] +  ​unexpand ​[-a] [fichier...]
-   +
-=== préparation=== +
-Création du fichier "​~/​Essai-text-processing/​essai-fmt"​+
  
 +=== Préparation===
 +  * Création du fichier "​~/​Essai-text-processing/​users-infos-espaces"​
 +  * Avec 7 ou plus espaces pour ligne 1 et 3
 +  * Avec moins de 7 espaces pour ligne 2
 <code user> <code user>
-cat > ~/​Essai-text-processing/​essai-fmt <<​EOF +cat > ~/​Essai-text-processing/​users-infos-espaces<<​EOF 
-chez debian-facile c'est facile ... très facile ... très très facile ... très très très très très très facile ​... facile et encore facile !+        01        Toto        toto@gmx.fr        modo 
 +>        02       ​Titi ​      ​titi@gmail.com       ​membre 
 +>          03         ​Lili ​        ​lili@hotmail.com         ​membre
 > EOF > EOF
-</​code>​ 
- 
-===Affichage du contenu d'un fichier en respectant les mots === 
-  * L'​affichage avec la commande "​cat"​ est parfois difficile à lire: 
-<code user> 
-cat ~/​Essai-text-processing/​essai-fmt 
-# Retour : 
-chez debian-facile c'est facile ... très facile ... très très facile ... très tr 
-ès très très très très facile ... facile et encore facile ! 
-</​code>​ 
- 
-  * Affichage avec la commande "​fmt"​ : 
-<code user> 
-fmt ~/​Essai-text-processing/​essai-fmt 
-# Retour : 
-chez debian-facile c'est facile ... très facile ... très très facile 
-... très très très très très très facile ... facile et encore 
-facile ! 
 </​code>​ </​code>​
 <​note>​ <​note>​
-Par défaut, la commande "​fmt"​ affiche ​le contenu d'un fichier ​par ligne de 75 caractères maximum.+Ci-dessus ce sont plusieurs espaces qui sont insérés entre les chaînes de caractères. 
 +Pour intégrer ​le contenu d'un fichier ​avec les redirections et EOF, la touche tabulation ne fonctionne pas.
 </​note>​ </​note>​
-===Options utiles ​=== +===Affichage avec cat : ce sont des espaces ​===
-  * -w : pour indiquer le nombre de caractère par ligne+
 <code user> <code user>
-fmt -w 20 ~/​Essai-text-processing/​essai-fmt+cat ~/​Essai-text-processing/​users-infos-espaces
 # Retour : # Retour :
-chez debian-facile +        01        Toto        toto@gmx.fr        modo 
-c'est facile +       02       ​Titi ​      ​titi@gmail.com       ​membre 
-... très facile +         03         ​Lili ​        ​lili@hotmail.com         ​membre
-... très très +
-facile ​... très +
-très très très +
-très très facile +
-... facile et +
-encore facile !+
 </​code>​ </​code>​
-===Combiner fmt et less pour encore plus de lisibilité ​===+===conversion des espaces en tabulation ​===
 <code user> <code user>
-fmt -w 20 ~/​Essai-text-processing/​essai-fmt | less +unexpand ​-~/​Essai-text-processing/​users-infos-espaces 
-# Retour : +# Retour: 
-chez debian-facile + 01   Toto       toto@gmx.fr modo 
-c'est facile +       02 Titi  ​  ​titi@gmail.com membre 
-... très facile +  ​03  ​   Lili lili@hotmail.com   membre
-... très très +
-facile ​... très +
-très très très +
-très très facile +
-... facile et +
-encore facile ! +
-(END)+
  
 </​code>​ </​code>​
-  * Voir [[doc:​editeurs:​less| la commande less]] +<note
-<code user+  * Option -a pour que la conversion des espaces ait lieu partout et pas seulement pour les espaces constituants la première colonnes de droite 
- +  * Les groupes de moins de 7 espaces consécutifs n'ont pas été convertis en tabulation  
- +</note 
-=====La commande ​nl ===== +====La commande ​"​expand" ​==== 
-Permet de numéroter l'​affichage d'un fichier.+La commande "​expand"​ convertit les tabulations en espaces
  
 ===Syntaxe === ===Syntaxe ===
  
-  ​nl [options] [fichier...]+  ​expand ​[-t numero] [fichier...]
  
 ===Préparation === ===Préparation ===
-  * copie du fichier ~/.bashrc et visualisation : +Soit le fichier ​"~/Essai-text-processing/​users-infos-tabul"​ contenant des tabulations
 <code user> <code user>
-cat ~/.bashrc >> ~/​Essai-text-processing/​bashrc-bis+unexpand -a ~/Essai-text-processing/​users-infos-espaces ​> ~/​Essai-text-processing/​users-infos-tabul
 </​code>​ </​code>​
-  * comparons avec l'​affichage de less+ 
 +=== Visualisation=== 
 <code user> <code user>
-less ~/​Essai-text-processing/​bashrc-bis+cat ~/​Essai-text-processing/​users-infos-tabul 
 +# Retour : 
 + 01   Toto       toto@gmx.fr modo 
 +       ​02 Titi  ​  ​titi@gmail.com membre 
 + 03     Lili lili@hotmail.com  ​ membre 
 </​code>​ </​code>​
-Extrait du retour :+===Convertion des tabulations en espaces=== 
 <code user> <code user>
-# ~/.bashrc: executed by bash(1) for non-login shells. +expand ​~/​Essai-text-processing/​users-infos-tabul 
-# see /​usr/​share/​doc/​bash/​examples/​startup-files (in the package bash-doc) +# Retour ​
-# for examples +        ​01 ​       Toto        toto@gmx.fr        modo 
- +       02       ​Titi       ​titi@gmail.com ​      ​membre 
-# If not running interactively,​ don't do anything +         03         ​Lili ​        ​lili@hotmail.com         ​membre
-case $- in +
-    *i*) ;; +
-      *) return;; +
-esac +
-[...] +
-===Affichage numéroté === +
-<​code>​ +
-nl ~/​Essai-text-processing/​bashrc-bis +
-</code user> +
-Extrait du retour ​+
-<​code>​ +
-     1 # ~/.bashrc: executed by bash(1) for non-login shells. +
-     2 # see /​usr/​share/​doc/​bash/​examples/​startup-files (in the package bash-doc) +
-     3 # for examples +
-        +
-     4 # If not running interactively,​ don't do anything +
-     ​5 case $- in +
-     ​6  ​   *i*) ;; +
-     7       ​*) return;; +
-     8 esac +
- [...] +
-</code user> +
-===Pour encore plus de lisibilité ===+
  
 +</​code>​
 +=== déterminer le nombre d'​espaces qui remplaceront chaque tabulation===
 +  * option -t nombre
 <code user> <code user>
-fmt -w 65 ~/​Essai-text-processing/​bashrc-bis | nl ~/​Essai-text-processing/​bashrc-bis | less+expand ​-t 1 ~/​Essai-text-processing/​users-infos-tabul 
 +# Retour : 
 + ​01 ​  ​Toto ​      ​toto@gmx.fr ​ modo 
 +       02 Titi    titi@gmail.com membre 
 +  03     ​Lili ​ lili@hotmail.com ​  ​membre
 </​code>​ </​code>​
  
-Extrait du retour ​:+====Aller plus loin avec les commandes expand et unexpand ==== 
 +Voir [[doc:​systeme:​expand |expand]]
  
-<​code>​ 
-     ​1 ​ # ~/.bashrc: executed by bash(1) for non-login shells. 
-     ​2 ​ # see /​usr/​share/​doc/​bash/​examples/​startup-files (in the package bash-doc) 
-     ​3 ​ # for examples 
-        
-     ​4 ​ # If not running interactively,​ don't do anything 
-     ​5 ​ case $- in 
-     ​6 ​     *i*) ;; 
-     ​7 ​       *) return;; 
-     ​8 ​ esac 
-        
-[...] 
-</​code>​ 
doc/systeme/commandes/les-commandes-join-paste-split-et-nl.txt · Dernière modification: 06/11/2015 17:57 par paskal

Pied de page des forums

Propulsé par FluxBB