Saya menemukan tautan ini tentang cara membuka tgz dalam satu langkah .
gzip -dc target.tar.gz | tar xf -
Apa artinya '-'?
command-line
tar
ripper234
sumber
sumber
tar xfz target.tar.gz
dan untuk bziptar xfj target.tar.bz2
Jawaban:
Ini adalah konvensi umum untuk digunakan
-
dalam argumen nama file yang berartistdin
ataustdout
;tar
mengikuti konvensi yang sama. Dari halaman manual:sumber
-
artinya. Stdin / stdout sejauh ini merupakan makna yang paling umum, tetapi ada yang lain. Misalnya, untuk beberapa versienv
itu berarti "mulai dengan lingkungan kosong".Konvensi lain adalah dengan menggunakan '-' untuk menunjukkan akhir flag, dan awal nama file. Perilaku itu terintegrasi dengan getopt (3) di RedHat 4, setidaknya. Saya tidak dapat menemukan halaman manual Red Hat yang menggunakan '-' untuk menunjukkan akhir argumen, mereka semua tampaknya menggunakan '-' untuk melakukan itu. Halaman manual awk memiliki '-' dalam konteks itu, jadi mungkin hanya perintah "heirloom" lama Unix atau Solaris menggunakan '-' sebagai argumen - pemisah nama file.
sumber
--
menandakan akhir dari opsi, jadi semua yang datang sesudahnya adalah operan.-
bukan pilihan, jadi itu dan semua yang datang sesudahnya adalah operan. Ini adalah perilaku standar . Untuk banyak perintah, sepertitar
, operan-
berarti input atau output standar . Pada banyak shell,set - -a
setara denganset -- -a
, dan pada beberapa shell Bourne lamaset - -a
adalah satu-satunya bentuk yang diterima, tapi ini pengecualian denganset
built-in.--
untuk memisahkan opsi dari argumen.