Dalam skrip, kesalahan biasanya dikirim ke file deskriptor 2 dengan &2
, yaitu:
echo "error" >&2
Kadang /dev/stderr
- kadang digunakan sebagai gantinya:
echo "error" > /dev/stderr
Melihat /dev/stderr
, saya melihat bahwa itu hanya sebuah symlink /proc/self/fd/2
, yang pada gilirannya adalah symlink ke /dev/pts/5
(pada terminal saya saat ini).
Tampak sedikit rumit. Apakah ada logika di balik itu?
Apakah menggunakan /dev/stderr
dan &2
setara?
Apakah ada yang lebih disukai daripada yang lain?
>2
, atau >&2
?
echo "error" >2
membuat file dengan nama2
dan kontenerror
.