Réponse rapide. Vous pouvez utiliser tee >(what_to_do) >(another_thing_to_do)
pour continuer avec votre commande pour autant de choses différentes que vous voulez faire.
Exemple:
Sortie du fichier de test d'origine:
:~$ cat testfile.txt
Device Model: LITEONIT LCS-256M6S 2.5 7mm 256GB
Serial Number: TW0XFJWX550854187616
Sortie avec tee
commandes ajoutées:
:~$ cat testfile.txt | tee >(tail -1) >(wc) >(awk '{print $3,$1,$2}')
Device Model: LITEONIT LCS-256M6S 2.5 7mm 256GB
Serial Number: TW0XFJWX550854187616
LITEONIT Device Model:
TW0XFJWX550854187616 Serial Number:
2 10 91
Serial Number: TW0XFJWX550854187616
Chaque commande dans tee n'est que des commandes normales que vous utiliseriez sur la ligne de commande, comme l'ajout de >(head -1 | wc)
travaux également.
:~$ cat testfile.txt | tee >(tail -1) >(head -1 | wc) >(awk '{print $3,$1,$2}')
Device Model: LITEONIT LCS-256M6S 2.5 7mm 256GB
Serial Number: TW0XFJWX550854187616
1 7 52
LITEONIT Device Model:
TW0XFJWX550854187616 Serial Number:
Serial Number: TW0XFJWX550854187616
Ou vous pouvez également saisir le dernier mot de dire la dernière ligne en utilisant awk
avec $NF
avec un wc
comme ceci:
:~$ cat testfile.txt | tail -1 | tee >(wc) >(awk '{print $NF}')
Serial Number: TW0XFJWX550854187616
TW0XFJWX550854187616
1 3 39
REMARQUE: l' ajout d'une |
commande de canal à la fin peut remplacer à l'aide des multiples commandes de la tee
commande. J'ai ici quelques exemples que j'ai testés:
Exemple 1 (commande Pipe tirant tous les derniers mots):
:~$ echo "This is just five words" | tee >(wc -l) >(wc -w) >(wc -c) | awk '{print $NF}'
words
24
5
1
Exemple 2 (N'affiche pas la sortie des commandes wc. La commande Pipe saisit le 3ème mot.):
:~$ echo "This is just five words" | tee >(wc -l) >(wc -w) >(wc -c) | awk '{print $3}'
just
Exemple 3 (Saisir le 3e mot de la ligne d'écho. Commande Tee.):
:~$ echo "This is just five words" | tee >(wc -l) >(wc -w) >(wc -c) >(awk '{print $3}')
This is just five words
just
24
5
1
Exemple 4 (en saisissant le dernier mot de la ligne d'écho. Commande Tee.):
:~$ echo "This is just five words" | tee >(wc -l) >(wc -w) >(wc -c) >(awk '{print $NF}')
This is just five words
words
24
5
1
J'espère que cela t'aides!