Szybka odpowiedź. Możesz użyć tee >(what_to_do) >(another_thing_to_do)polecenia, aby wykonać tyle różnych czynności, ile chcesz.
Przykład:
Oryginalny plik wyjściowy pliku testowego:
:~$ cat testfile.txt
Device Model: LITEONIT LCS-256M6S 2.5 7mm 256GB
Serial Number: TW0XFJWX550854187616
Dane wyjściowe z teedodanymi poleceniami:
:~$ 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
Każde polecenie w tee jest zwykłymi poleceniami, których używałbyś w wierszu poleceń, podobnie jak dodawanie >(head -1 | wc)działa.
:~$ 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
Albo można też złapać ostatnie słowo powiedzieć ostatnią linię korzystając awkze $NFz wctak dobrze jak to:
:~$ cat testfile.txt | tail -1 | tee >(wc) >(awk '{print $NF}')
Serial Number: TW0XFJWX550854187616
TW0XFJWX550854187616
1 3 39
UWAGA: Dodanie |polecenia potoku do końca może zastąpić wiele poleceń z teepolecenia. Mam tutaj kilka przykładów, które testowałem:
Przykład 1 (polecenie potoku ciągnące wszystkie ostatnie słowa):
:~$ echo "This is just five words" | tee >(wc -l) >(wc -w) >(wc -c) | awk '{print $NF}'
words
24
5
1
Przykład 2 (Nie pokazuje wyniku poleceń wc. Polecenie potoku przechwytuje 3 słowo.):
:~$ echo "This is just five words" | tee >(wc -l) >(wc -w) >(wc -c) | awk '{print $3}'
just
Przykład 3 (Chwytanie trzeciego słowa linii echa. Polecenie 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
Przykład 4 (Chwytanie ostatniego słowa linii echa. Polecenie 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
Mam nadzieję że to pomoże!