Câu trả lời nhanh. Bạn có thể dùngtee >(what_to_do) >(another_thing_to_do)
để tiếp tục thực hiện với lệnh của mình cho bao nhiêu điều khác nhau bạn muốn làm.
Thí dụ:
Đầu ra tệp thử nghiệm gốc:
:~$ cat testfile.txt
Device Model: LITEONIT LCS-256M6S 2.5 7mm 256GB
Serial Number: TW0XFJWX550854187616
Đầu ra với tee
các lệnh được thêm vào:
:~$ 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
Mỗi lệnh trong tee chỉ là các lệnh thông thường bạn sẽ sử dụng trên dòng lệnh, như add in >(head -1 | wc)
work.
:~$ 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
Hoặc bạn cũng có thể lấy từ cuối cùng để nói dòng cuối cùng bằng cách sử dụng awk
cùng $NF
với wc
như thế này:
:~$ cat testfile.txt | tail -1 | tee >(wc) >(awk '{print $NF}')
Serial Number: TW0XFJWX550854187616
TW0XFJWX550854187616
1 3 39
LƯU Ý: Thêm |
lệnh ống vào cuối có thể ghi đè bằng nhiều lệnh từtee
lệnh. Tôi có một số ví dụ ở đây mà tôi đã thử nghiệm:
Ví dụ 1 (Lệnh ống kéo tất cả các từ cuối cùng):
:~$ echo "This is just five words" | tee >(wc -l) >(wc -w) >(wc -c) | awk '{print $NF}'
words
24
5
1
Ví dụ 2 (Không hiển thị đầu ra của các lệnh wc. Lệnh ống lấy từ thứ 3.):
:~$ echo "This is just five words" | tee >(wc -l) >(wc -w) >(wc -c) | awk '{print $3}'
just
Ví dụ 3 (Lấy từ thứ 3 của dòng echo. Lệnh 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
Ví dụ 4 (Lấy từ cuối cùng của dòng echo. Lệnh 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
Hi vọng điêu nay co ich!