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 →
Ceci est une ancienne révision du document !
Nota :
Contributeurs, les sont là pour vous aider, supprimez-les une fois le problème corrigé ou le champ rempli !
fmt [options] [fichier...]
Création du fichier “~/Essai-text-processing/essai-fmt”
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
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 !
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 !
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 !
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)
Permet de numéroter l'affichage d'un fichier.
nl [options] [fichier...]
cat ~/.bashrc >> ~/Essai-text-processing/bashrc-bis
less ~/Essai-text-processing/bashrc-bis
Extrait du retour :
# ~/.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 [...] ===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 user> fmt -w 65 ~/Essai-text-processing/bashrc-bis | nl ~/Essai-text-processing/bashrc-bis | less
Extrait du retour :
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 [...]
join [options]... fichier1 fichier2
Soit deux fichiers : “users” et “infos-users”
cat ~/Essai-text-processing/users
retour :
01 Toto 02 Titi 03 Lili
cat ~/Essai-text-processing/infos-users
Retour :
toto@gmail.com 01 titi@gmx.fr 02 lili@hotmail.com 03
join -1 1 -2 2 ~/Essai-text-processing/users ~/Essai-text-processing/infos-users
Retour :
01 Toto toto@gmail.com 02 Titi titi@gmx.fr 03 Lili lili@hotmail.com
join -1 1 -2 2 ~/Essai-text-processing/users ~/Essai-text-processing/infos-users > ~/Essai-text-processing/adr-users
cat ~/Essai-text-processing/adr-users
01 Toto toto@gmail.com 02 Titi titi@gmx.fr 03 Lili lili@hotmail.com
paste [options]... [fichier]...
La jointure se fait selon lignes à ligne, donc il faut des fichiers avec des lignes rangées dans le même ordre.
Visualisons les deux fichiers concernés, “users” et “infos-users”
cat ~/Essai-text-processing/users # retour : 01 Toto 02 Titi 03 Lili cat ~/Essai-text-processing/infos-users #retour : toto@gmail.com 01 titi@gmx.fr 02 lili@hotmail.com 03
Retour:
paste ~/Essai-text-processing/users ~/Essai-text-processing/infos-users
Retour :
01 Toto toto@gmail.com 01 02 Titi titi@gmx.fr 02 03 Lili lili@hotmail.com 03
paste ~/Essai-text-processing/users ~/Essai-text-processing/infos-users > ~/Essai-text-processing/paste-users-infos
01 Toto toto@gmail.com 01 02 Titi titi@gmx.fr 02 03 Lili lili@hotmail.com 03
sort [options [+POS1] [-POS2]] [fichier...]
Soit le fichier ”~/Essai-text-processing/users.sort”
cat ~/Essai-text-processing/users.sort # Retour 5 Papi 1 Toto 3 Lili 2 Titi 4 Mami 003 Zaza 01 Nani
sort ~/Essai-text-processing/users.sort # Retour : 003 Zaza 01 Nani 1 Toto 2 Titi 3 Lili 4 Mami 5 Papi
cat ~/Essai-text-processing/sort.abc # Retour: tomate fraise abricot ananas kiwi pomme
sort ~/Essai-text-processing/sort.abc # Retour: abricot ananas fraise kiwi pomme tomate
cat ~/Essai-text-processing/sort.abc # Retour : tomate:4 fraise:1 abricot:2 ananas:6 kiwi:5 pomme:3
sort -t':' -k 2n ~/Essai-text-processing/sort.abc fraise:1 abricot:2 pomme:3 tomate:4 kiwi:5 ananas:6
cat ~/Essai-text-processing/sort.123abc # Retour: tomate:x:c fraise:1 abricot:2 ananas:x:b kiwi:x:a pomme:3
sort -t':' -k 2n -k 3d ~/Essai-text-processing/sort.123abc # Retour: kiwi:x:a ananas:x:b tomate:x:c fraise:1 abricot:2 pomme:3
sort -t':' -k 2n -k 3d ~/Essai-text-processing/sort.123abc > ~/Essai-text-processing/sort.123abc.ok
cat ~/Essai-text-processing/sort.123abc.okkiwi:x:a # Retour : ananas:x:b tomate:x:c fraise:1 abricot:2 pomme:3
Elle permet de traduire, c'est-à-dire, changer des lettres
tr [options] ens1 ens2
cat ~/Essai-text-processing/tr-essai # retour: Pierre Paul Jacques
tr P p < ~/Essai-text-processing/tr-essai pierre paul Jacques
cat ~/Essai-text-processing/tr-essai # retour: Pierre Paul Jacques
tr P X < ~/Essai-text-processing/tr-essai Xierre Xaul Jacques
cat ~/Essai-text-processing/tr-essai # retour : Pierre Paul Jacques
tr PJ pj < ~/Essai-text-processing/tr-essai pierre paul jacques
Elle permet d'éliminer les lignes dupliquées d'un fichier trié.
uniq [options] [fichier-entrée] [fichier-sortie]
cat ~/Essai-text-processing/users-uniq # Retour: Papi 1 Toto 3 Lili 2 Titi 4 Mami 003 Zaza 01 Nani
echo 01 Nani >> ~/Essai-text-processing/users-uniq
cat ~/Essai-text-processing/users-uniq # Retour: 5 Papi 1 Toto 3 Lili 2 Titi 4 Mami 003 Zaza 01 Nani 01 Nani
sort ~/Essai-text-processing/users-uniq | uniq > ~/Essai-text-processing/users-sort-uniq
cat ~/Essai-text-processing/users-sort-uniq # Retour : 003 Zaza 01 Nani 1 Toto 2 Titi 3 Lili 4 Mami 5 Papi
split [options] [fichier_entrée [préfixe_sortie]]
Création du fichier “~/Essai-text-processing/liste-fruits”
cat > ~/Essai-text-processing/liste-fruits <<EOF > 1 fraise > 2 abricot > 3 pomme > EOF
Vérification :
cat ~/Essai-text-processing/liste-fruits # Retour: 1 fraise 2 abricot 3 pomme
-C : découper par taille maximale
ex: split -C 5 fichier : découpage en 5 octets
( ou de même split -C 5b)\\ split -C 5k fichier : découpage en 5 kilo-octets\\ split -C 5m fichier : découpage en 5 mega-octets\\
-b : découper par 1 taille précise
Ex: split -b 5 fichier) ⇒ tous les fichiers créés par découpage auront cette taille (sauf peut-être le dernier)
Il faut 8 bits pour faire 1 byte (1 octet)
split -C 1b ~/Essai-text-processing/liste-fruits fruit1b
Le fichier n'est pas lourd et le découpage en taille de 1 byte (=octet) ne le découpe pas :
ls fruit1b* # Retour fruit1baa
Un seul fichier a été créé :
cat fruit1b* # Retour : 1 fraise 2 abricot 3 pomme
Et le fichier et créé dans le répertoire dans lequel le terminal est ouvert.\ Pour que le fichier créé lors du découpage soit dans le répertoire du fichier à découper :
split -C 1b ~/Essai-text-processing/liste-fruits fruit1b && mv fruit1b* ~/Essai-text-processing/ #puis ls ~/Essai-text-processing/fruit1b* # Retour: /home/hypathie/Essai-text-processing/fruit1baa
Ou
cd Essai-text-processing/ # puis: split -C 1b ~/Essai-text-processing/liste-fruits fruit1b # puis : ls fruit1b* fruit1baa
Sans indication de préfixe, par défaut les fichiers créés par le découpage porte le préfixe x??
cd Essai-text-processing/ # puis: split -l 1 ~/Essai-text-processing/liste-fruits # puis: ls x* # Retour: xaa xab xac # puis: cat x* # Retour : 1 fraise 2 abricot 3 pomme