Saya tidak jelas apa urutan terbaik untuk mengambil keduanya STDERR
dan STDOUT
menggunakan file yang sama tee
. Saya tahu bahwa jika saya ingin melakukan pipe ke file saya harus memetakan filehandle setelah redirect, yaitu
find . >/tmp/output.txt 2>&1
Ini menginstruksikan shell untuk mengirim STDOUT
ke /tmp/output.txt
dan kemudian mengirim STDERR
ke STDOUT
(yang sekarang mengirim ke /tmp/output.txt
).
Mencoba melakukan 2>&1
sebelum mengarahkan file tidak akan memiliki efek yang diinginkan.
Namun ketika saya ingin menggunakan pipa tee
seharusnya:
find . |tee /tmp/output.txt 2>&1 # or
find . 2>&1 |tee /tmp/output.txt # ?
|&
digunakan, kesalahan standar command1 terhubung ke input standar command2 melalui pipa; itu adalah singkatan2>&1 |
. Pengalihan implisit dari kesalahan standar ini dilakukan setelah setiap pengalihan ditentukan oleh perintah."