Aku tahu apa
program > /dev/null 2>&1
melakukan. Ini mengarahkan output ke /dev/null
dan 2>&1
berarti mengarahkan keluaran kesalahan di tempat yang sama dengan tempat keluaran dikirim.
Masalah saya adalah saya selalu harus googling karena saya tidak pernah mengingatnya.
Jadi, saya mencoba &2>1
, 1>2&
, 1>&2
… Saya mencoba setiap kombinasi sampai saya mencarinya di Google…
Apa trik untuk mengingatnya dengan mudah?
Jawaban yang Diterima:
Keluaran lebih baik daripada kesalahan sehingga yang didahulukan (1 vs 2).
>
adalah singkatan dari 'pergi ke'. Di sebelah kiri adalah apa yang ingin saya kirim dan di sebelah kanan adalah tempat saya ingin mengirimnya. Karena 'di mana' (hampir) selalu berupa file, kira-kira seperti
program > /dev/null 2>1
akan mengarahkan ke file bernama 1. Jadi, ampersand (&)
memodifikasi file ke file deskriptor.
Sayangnya, saya belum menemukan atau mengembangkan mnemonic saya sendiri, tetapi ketika saya pertama kali belajar *nix, saya menemukan cara logis ini untuk bekerja dengan baik. Setelah beberapa kali run-through, itu menjadi kebiasaan.