Jika yang Anda maksud adalah -
telanjang di akhir tar
perintah, itu umum pada banyak perintah yang ingin menggunakan file.
Ini memungkinkan Anda menentukan input atau output standar daripada aktual nama file.
Itulah kasus untuk contoh pertama dan ketiga Anda. Misalnya, cdrecord
perintah mengambil input standar (aliran citra ISO dihasilkan oleh mkisofs
) dan menulisnya langsung ke /dev/dvdrw
.
Dengan cd
perintah, setiap kali Anda mengubah direktori, itu menyimpan direktori asal Anda. Jika Anda melakukan cd
dengan -
khusus "nama direktori", ia menggunakan direktori yang diingat itu, bukan yang asli. Anda dapat dengan mudah beralih di antara dua direktori dengan cukup cepat menggunakan itu.
Perintah lain mungkin menangani -
sebagai berbeda nilai khusus.
Ini bukan sihir. Beberapa perintah menginterpretasikan -
sebagai pengguna yang ingin membaca dari stdin atau menulis ke stdout; tidak ada yang istimewa tentang itu pada shell.
-
berarti persis apa yang diinginkan oleh setiap perintah. Ada beberapa konvensi umum, dan Anda telah melihat sebagian besar contohnya di jawaban lain, tetapi tidak ada yang 100% universal.
Tidak ada keajaiban tentang -
karakter sejauh menyangkut shell (kecuali shell itu sendiri, dan beberapa perintah bawaannya seperti cd
dan echo
, gunakan dengan cara konvensional). Beberapa karakter, seperti \
, '
, dan "
, adalah "ajaib", memiliki arti khusus dimanapun mereka muncul. Ini adalah "karakter meta shell". -
tidak seperti itu.
Untuk melihat bagaimana perintah yang diberikan menggunakan -
, baca dokumentasi untuk perintah itu .