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:commandes:les-commandes-join-paste-split-et-nl [10/07/2014 09:16] Hypathie [La commande join] |
doc:systeme:commandes:les-commandes-join-paste-split-et-nl [10/07/2014 09:44] Hypathie [La commande split] |
||
---|---|---|---|
Ligne 256: | Ligne 256: | ||
<code user> | <code user> | ||
cat ~/Essai-text-processing/users | cat ~/Essai-text-processing/users | ||
- | # retour : | + | </code> |
+ | <code> | ||
01 Toto | 01 Toto | ||
02 Titi | 02 Titi | ||
03 Lili | 03 Lili | ||
+ | </code> | ||
+ | <code user> | ||
cat ~/Essai-text-processing/infos-users | cat ~/Essai-text-processing/infos-users | ||
- | #retour : | + | </code> |
+ | <code> | ||
toto@gmail.com 01 | toto@gmail.com 01 | ||
titi@gmx.fr 02 | titi@gmx.fr 02 | ||
Ligne 269: | Ligne 272: | ||
===Regroupement des lignes des deux fichiers === | ===Regroupement des lignes des deux fichiers === | ||
- | Retour: | ||
<code user> | <code user> | ||
paste ~/Essai-text-processing/users ~/Essai-text-processing/infos-users | paste ~/Essai-text-processing/users ~/Essai-text-processing/infos-users | ||
</code> | </code> | ||
- | |||
- | Retour : | ||
<code> | <code> | ||
Ligne 305: | Ligne 305: | ||
<code user> | <code user> | ||
cat ~/Essai-text-processing/users.sort | cat ~/Essai-text-processing/users.sort | ||
- | # Retour | + | </code> |
+ | <code> | ||
5 Papi | 5 Papi | ||
1 Toto | 1 Toto | ||
Ligne 314: | Ligne 315: | ||
01 Nani | 01 Nani | ||
</code> | </code> | ||
- | === tri par défaut=== | + | === Tri par défaut=== |
<code user> | <code user> | ||
sort ~/Essai-text-processing/users.sort | sort ~/Essai-text-processing/users.sort | ||
- | # Retour : | + | </code> |
+ | <code> | ||
003 Zaza | 003 Zaza | ||
01 Nani | 01 Nani | ||
Ligne 331: | Ligne 333: | ||
<code user> | <code user> | ||
cat ~/Essai-text-processing/sort.abc | cat ~/Essai-text-processing/sort.abc | ||
- | # Retour: | + | </code> |
+ | <code> | ||
tomate | tomate | ||
fraise | fraise | ||
Ligne 342: | Ligne 345: | ||
<code user> | <code user> | ||
sort ~/Essai-text-processing/sort.abc | sort ~/Essai-text-processing/sort.abc | ||
- | # Retour: | + | </code> |
+ | <code> | ||
abricot | abricot | ||
ananas | ananas | ||
Ligne 354: | Ligne 358: | ||
<code user> | <code user> | ||
cat ~/Essai-text-processing/sort.abc | cat ~/Essai-text-processing/sort.abc | ||
- | # Retour : | + | </code> |
+ | <code> | ||
tomate:4 | tomate:4 | ||
fraise:1 | fraise:1 | ||
Ligne 374: | Ligne 379: | ||
<note tip> | <note tip> | ||
- | Les options très utiles: | + | Les options utiles: |
- | * -t : pour spécifier le séparateur (par défaut ce sont les espaces ou les tabulations qui délimitent les colonnes) | + | * ''-t'' : pour spécifier le séparateur (par défaut ce sont les espaces ou les tabulations qui délimitent les colonnes) |
- | * -k : pour spécifier la colonne | + | * ''-k'' : pour spécifier la colonne |
- | * -2 : n° de colonne | + | * ''-2'' : n° de colonne |
- | * -n : pour spécifier qu'il s'agit d'un tri numérique | + | * ''-n'' : pour spécifier qu'il s'agit d'un tri numérique |
- | * -d : pour tri dictionnaire | + | * ''-d'' : pour tri dictionnaire |
- | * -r : pour un tri inverse (-rn ou -rd) | + | * ''-r'' : pour un tri inverse (-rn ou -rd) |
- | * -M : ordre chronologique | + | * ''-M'' : ordre chronologique |
</note> | </note> | ||
===Tri selon plusieurs colonnes === | ===Tri selon plusieurs colonnes === | ||
<code user> | <code user> | ||
cat ~/Essai-text-processing/sort.123abc | cat ~/Essai-text-processing/sort.123abc | ||
- | # Retour: | + | </code> |
+ | <code> | ||
tomate:x:c | tomate:x:c | ||
fraise:1 | fraise:1 | ||
Ligne 397: | Ligne 403: | ||
<code user> | <code user> | ||
sort -t':' -k 2n -k 3d ~/Essai-text-processing/sort.123abc | sort -t':' -k 2n -k 3d ~/Essai-text-processing/sort.123abc | ||
- | # Retour: | + | </code> |
+ | <code> | ||
kiwi:x:a | kiwi:x:a | ||
ananas:x:b | ananas:x:b | ||
Ligne 406: | Ligne 413: | ||
</code> | </code> | ||
- | === concaténer et créer un fichier avec la résultat=== | + | === Concaténer et créer un fichier avec la résultat=== |
<code user> | <code user> | ||
sort -t':' -k 2n -k 3d ~/Essai-text-processing/sort.123abc > ~/Essai-text-processing/sort.123abc.ok | sort -t':' -k 2n -k 3d ~/Essai-text-processing/sort.123abc > ~/Essai-text-processing/sort.123abc.ok | ||
Ligne 415: | Ligne 422: | ||
<code user> | <code user> | ||
cat ~/Essai-text-processing/sort.123abc.okkiwi:x:a | cat ~/Essai-text-processing/sort.123abc.okkiwi:x:a | ||
- | # Retour : | + | </code> |
+ | <code> | ||
ananas:x:b | ananas:x:b | ||
tomate:x:c | tomate:x:c | ||
Ligne 432: | Ligne 440: | ||
<code user> | <code user> | ||
cat ~/Essai-text-processing/tr-essai | cat ~/Essai-text-processing/tr-essai | ||
- | # retour: | + | </code> |
+ | <code> | ||
Pierre Paul Jacques | Pierre Paul Jacques | ||
</code> | </code> | ||
Ligne 438: | Ligne 447: | ||
<code user> | <code user> | ||
tr P p < ~/Essai-text-processing/tr-essai | tr P p < ~/Essai-text-processing/tr-essai | ||
+ | </code> | ||
+ | <code> | ||
pierre paul Jacques | pierre paul Jacques | ||
</code> | </code> | ||
Ligne 443: | Ligne 454: | ||
<code user> | <code user> | ||
cat ~/Essai-text-processing/tr-essai | cat ~/Essai-text-processing/tr-essai | ||
- | # retour: | + | </code> |
+ | <code> | ||
Pierre Paul Jacques | Pierre Paul Jacques | ||
</code> | </code> | ||
Ligne 449: | Ligne 461: | ||
<code user> | <code user> | ||
tr P X < ~/Essai-text-processing/tr-essai | tr P X < ~/Essai-text-processing/tr-essai | ||
+ | </code> | ||
+ | <code> | ||
Xierre Xaul Jacques | Xierre Xaul Jacques | ||
</code> | </code> | ||
Ligne 454: | Ligne 468: | ||
<code user> | <code user> | ||
cat ~/Essai-text-processing/tr-essai | cat ~/Essai-text-processing/tr-essai | ||
- | # retour : | + | </code> |
+ | <code> | ||
Pierre Paul Jacques | Pierre Paul Jacques | ||
</code> | </code> | ||
Ligne 460: | Ligne 475: | ||
<code user> | <code user> | ||
tr PJ pj < ~/Essai-text-processing/tr-essai | tr PJ pj < ~/Essai-text-processing/tr-essai | ||
+ | </code> | ||
+ | <code> | ||
pierre paul jacques | pierre paul jacques | ||
</code> | </code> | ||
Ligne 474: | Ligne 491: | ||
<code user> | <code user> | ||
cat ~/Essai-text-processing/users-uniq | cat ~/Essai-text-processing/users-uniq | ||
- | # Retour: | + | </code> |
+ | <code> | ||
Papi | Papi | ||
1 Toto | 1 Toto | ||
Ligne 483: | Ligne 501: | ||
01 Nani | 01 Nani | ||
</code> | </code> | ||
- | ===ajouter une ligne=== | + | ===Ajouter une ligne=== |
<code user> | <code user> | ||
echo 01 Nani >> ~/Essai-text-processing/users-uniq | echo 01 Nani >> ~/Essai-text-processing/users-uniq | ||
Ligne 491: | Ligne 509: | ||
<code user> | <code user> | ||
cat ~/Essai-text-processing/users-uniq | cat ~/Essai-text-processing/users-uniq | ||
- | # Retour: | + | </code> |
+ | <code> | ||
5 Papi | 5 Papi | ||
1 Toto | 1 Toto | ||
Ligne 510: | Ligne 529: | ||
<code user> | <code user> | ||
cat ~/Essai-text-processing/users-sort-uniq | cat ~/Essai-text-processing/users-sort-uniq | ||
- | # Retour : | + | </code> |
+ | <code> | ||
003 Zaza | 003 Zaza | ||
01 Nani | 01 Nani | ||
Ligne 526: | Ligne 546: | ||
===Préparation === | ===Préparation === | ||
- | Création du fichier "~/Essai-text-processing/liste-fruits" | + | * Création du fichier "~/Essai-text-processing/liste-fruits" : |
<code user> | <code user> | ||
Ligne 536: | Ligne 556: | ||
</code> | </code> | ||
- | Vérification : | + | * Vérification : |
<code user> | <code user> | ||
cat ~/Essai-text-processing/liste-fruits | cat ~/Essai-text-processing/liste-fruits | ||
- | # Retour: | + | </code> |
+ | <code> | ||
1 fraise | 1 fraise | ||
2 abricot | 2 abricot | ||
3 pomme | 3 pomme | ||
</code> | </code> | ||
- | ===Découpage en taille et répartition en autant de fichiers === | + | ====Découpage par taille et répartition en autant de fichiers ==== |
<note> | <note> | ||
* options de découpage par taille :\\ | * options de découpage par taille :\\ | ||
Ligne 564: | Ligne 585: | ||
</note> | </note> | ||
- | * exemple de découpage par taille d'un octet avec le préfixe "fruit1b" | + | * Exemple de découpage par taille d'un octet avec le préfixe ''fruit1b'' : |
<code user> | <code user> | ||
split -C 1b ~/Essai-text-processing/liste-fruits fruit1b | split -C 1b ~/Essai-text-processing/liste-fruits fruit1b | ||
</code> | </code> | ||
- | Le fichier n'est pas lourd et le découpage en taille de 1 byte (=octet) ne le découpe pas : | + | |
+ | >Le fichier n'est pas lourd et le découpage en taille de 1 byte (=octet) ne le découpe pas : | ||
<code user> | <code user> | ||
ls fruit1b* | ls fruit1b* | ||
- | # Retour | + | </code> |
+ | <code> | ||
fruit1baa | fruit1baa | ||
</code> | </code> | ||
- | Un seul fichier a été créé : | + | >Un seul fichier a été créé. |
+ | |||
<code user> | <code user> | ||
cat fruit1b* | cat fruit1b* | ||
- | # Retour : | + | </code> |
+ | <code> | ||
1 fraise | 1 fraise | ||
2 abricot | 2 abricot | ||
3 pomme | 3 pomme | ||
</code> | </code> | ||
- | 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 : | + | >Le fichier est créé dans le répertoire dans lequel le terminal est ouvert.\\ |
+ | Pour que le fichier créé, lors du découpage, se retrouve dans le répertoire du fichier à découper : | ||
<code user> | <code user> | ||
split -C 1b ~/Essai-text-processing/liste-fruits fruit1b && mv fruit1b* ~/Essai-text-processing/ | split -C 1b ~/Essai-text-processing/liste-fruits fruit1b && mv fruit1b* ~/Essai-text-processing/ | ||
- | #puis | + | </code> |
+ | <code> | ||
ls ~/Essai-text-processing/fruit1b* | ls ~/Essai-text-processing/fruit1b* | ||
- | # Retour: | + | </code> |
+ | <code> | ||
/home/hypathie/Essai-text-processing/fruit1baa | /home/hypathie/Essai-text-processing/fruit1baa | ||
</code> | </code> | ||
- | Ou | + | * Ou encore : |
<code user> | <code user> | ||
cd Essai-text-processing/ | cd Essai-text-processing/ | ||
- | # puis: | + | </code> |
+ | <code user> | ||
split -C 1b ~/Essai-text-processing/liste-fruits fruit1b | split -C 1b ~/Essai-text-processing/liste-fruits fruit1b | ||
- | # puis : | + | </code> |
+ | <code user> | ||
ls fruit1b* | ls fruit1b* | ||
+ | </code> | ||
+ | <code> | ||
fruit1baa | fruit1baa | ||
</code> | </code> | ||
- | ===Découpage par ligne === | + | ====Découpage par ligne ==== |
<note> | <note> | ||
* option de découpage par ligne qui détermine le découpage :\\ | * option de découpage par ligne qui détermine le découpage :\\ | ||
Ligne 615: | Ligne 648: | ||
<code user> | <code user> | ||
cd Essai-text-processing/ | cd Essai-text-processing/ | ||
- | # puis: | + | </code> |
+ | <code user> | ||
split -l 1 ~/Essai-text-processing/liste-fruits | split -l 1 ~/Essai-text-processing/liste-fruits | ||
- | # puis: | + | </code> |
+ | <code user> | ||
ls x* | ls x* | ||
- | # Retour: | + | </code> |
+ | <code> | ||
xaa xab xac | xaa xab xac | ||
- | # puis: | + | </code> |
+ | <code user> | ||
cat x* | cat x* | ||
- | # Retour : | + | </code> |
+ | <code> | ||
1 fraise | 1 fraise | ||
2 abricot | 2 abricot |