Android

Arahan Tar dalam linux (membuat dan ekstrak arkib)

11.Linux для Начинающих - Архивирование и Сжатие tar, gzip, bzip2, xz, zip

11.Linux для Начинающих - Архивирование и Сжатие tar, gzip, bzip2, xz, zip

Isi kandungan:

Anonim

Perintah tar digunakan untuk membuat arkib tar dengan menukar kumpulan fail ke dalam arkib. Ia juga mempunyai keupayaan untuk mengeluarkan arkib tar, memaparkan senarai fail yang termasuk dalam arkib, menambah fail tambahan ke arkib yang sedia ada, serta pelbagai jenis operasi lain.

Tar pada asalnya direka untuk membuat arkib untuk menyimpan fail pada pita magnet yang sebabnya ia mempunyai namanya " T ape AR chive".

Dalam tutorial ini, kami akan menunjukkan kepada anda cara menggunakan perintah tar untuk mengekstrak, menyenaraikan dan membuat arkib tar melalui contoh praktikal dan penjelasan terperinci tentang pilihan tar yang paling biasa.

Tar Command Syntax

Terdapat dua versi tar, tar BSD dan GNU tar dengan beberapa perbezaan fungsi antara. Kebanyakan sistem Linux datang dengan menggunakan GNU tar sebelum dipasang secara lalai.

Sintaks umum untuk arahan tar adalah seperti berikut:

tar

  • OPERATION - Hanya satu hujah operasi dibenarkan dan diperlukan. Operasi paling kerap digunakan ialah:
    • --create ( -c ) - Buat arkib tar baharu. --extract ( -x ) - Ekstrak keseluruhan arkib atau satu atau lebih fail dari arkib. --list ( -t ) - Paparkan senarai fail yang termasuk dalam arkib
    OPTIONS - Operasi paling kerap digunakan ialah:
    • --verbose ( -v ) - Tunjukkan fail yang diproses oleh perintah tar. --file=archive=name ( -f archive-name ) - Menentukan nama fail arkib.
    ARCHIVE_NAME - Nama arkib. FILE_NAME(s) - Senarai nama fail ruang yang dipisahkan dari arkib. Sekiranya tidak diberikan keseluruhan arkib dikeluarkan.

Apabila melaksanakan perintah tar, anda boleh menggunakan bentuk operasi dan pilihan tar yang panjang atau pendek. Bentuk panjang lebih mudah dibaca manakala bentuk pendek lebih cepat diketik. Pilihan bentuk-panjang diawali dengan dash ganda ( -- ). Pilihan bentuk pendek diawali dengan satu dash ( - ) yang boleh diabaikan.

Membuat Arsip Tar

Tar menyokong pelbagai program mampatan seperti gzip , bzip2 , lzip , lzma , lzop , xz dan compress . Apabila membuat arkib tar termampat, ia adalah satu konvensyen yang diterima untuk menambahkan akhiran pemampat kepada nama fail arkib. Sebagai contoh, jika arkib telah dikompresi dengan gzip ia harus dinamakan arkib.tar.gz.

Untuk membuat arkib taram gunakan pilihan -c diikuti oleh -f dan nama arkib.

Sebagai contoh, untuk membuat arkib yang bernama archive.tar dari fail bernama file1 , file2 , file3 , anda akan menjalankan perintah berikut:

tar -cf archive.tar file1 file2 file3

Berikut ialah arahan yang setara dengan menggunakan pilihan bentuk panjang:

tar --create --file=archive.tar file1 file2 file3

Anda boleh membuat arkib dari kandungan satu atau lebih direktori atau fail. Secara lalai, direktori diarkibkan secara rekursif melainkan pilihan opsyen --no-recursion ditentukan.

Contoh berikut akan mencipta arkib yang dinamakan user_backup.tar direktori /home/user :

tar -cf backup.tar /home/user

Gunakan pilihan -v jika anda mahu melihat fail yang sedang diproses.

Membuat Arsip Tar Gz

Gzip adalah algoritma yang paling popular untuk memampatkan fail tar. Apabila menyusun arkib tar dengan gzip nama arkib hendaklah berakhir dengan baik tar.gz atau tgz .

Opsyen -z memberitahu tar untuk memampatkan arkib menggunakan algoritma gzip kerana ia dibuat. Sebagai contoh, untuk membuat arkib tar.gz dari fail yang diberikan, anda akan menggunakan arahan berikut:

tar -czf archive.tar.gz file1 file2

Membuat Tar Bz2 Arkib

Satu lagi algoritma popular untuk memampatkan fail tar ialah bzip2. Apabila menyusun arkib tar dengan bzip2 nama arkib hendaklah berakhir dengan tar.bz2 atau tar.bz2 sama ada.

Apabila pilihan -j ditentukan tar akan menggunakan algoritma bzip2 untuk memampatkan arkib. Perintah berikut akan membuat arsip tar.bz2 dari fail yang diberikan:

tar -cjf archive.tar.bz2 file1 file2

Penyenaraian Tar Archives

Apabila digunakan dengan pilihan - --list ( -t ), arahan tar akan menyenaraikan kandungan arkib tar tanpa mengeluarkannya. Perintah di bawah, akan menyenaraikan kandungan fail archive.tar :

tar -tf archive.tar Output akan menyenaraikan nama semua fail dalam arkib:

file1 file2 file3

Untuk mendapatkan maklumat lanjut seperti pemilik fail, saiz fail, cap waktu menggunakan pilihan --verbose ( -v ):

tar -tvf archive.tar

-rw-r--r-- linuxize/users 0 2018-09-08 01:19 file1 -rw-r--r-- linuxize/users 0 2018-09-08 01:19 file2 -rw-r--r-- linuxize/users 0 2018-09-08 01:19 file3

Mengekstrak Arsip Tar

Kebanyakan fail yang diarkib di Linux diarkibkan dan dimampatkan menggunakan format tar atau tar.gz. Mengetahui cara mengekstrak fail-fail ini dari baris arahan adalah penting.

Untuk mengekstrak arkib tar menggunakan pilihan --extract ( -x ) diikuti oleh nama arkib:

tar -xf archive.tar

Ia juga biasa untuk menambah pilihan -v untuk mencetak nama-nama fail yang diekstrak.

tar -xvf archive.tar

Mengekstrak Arsip Tar dalam Direktori yang berbeza

Secara lalai, tar akan mengeluarkan kandungan arkib dalam direktori kerja semasa. Gunakan --directory ( -C ) untuk mengeluarkan fail arkib dalam direktori tertentu:

Sebagai contoh, untuk mengekstrak kandungan arkib ke direktori /opt/files , anda boleh menggunakan:

tar -xf archive.tar -C /opt/files

Mengekstrak Tar Gz dan Tar Bz2 Archives

Apabila mengekstrak arsip termampat seperti tar.gz atau tar.bz2 anda tidak perlu menentukan pilihan penyahmampatan. Perintah adalah sama seperti ketika mengekstrak arkib tar :

tar -xf archive.tar.gz

tar -xf archive.tar.bz2

Mengekstrak Fail Tertentu dari Arkib Tar

Kadang-kadang bukannya mengekstrak keseluruhan arkib, anda mungkin perlu mengekstrak hanya beberapa fail daripadanya.

Untuk mengekstrak fail tertentu dari arkib tar, tambah senarai nama fail yang dipisahkan ruang yang akan diekstrak selepas nama arkib:

tar -xf archive.tar file1 file2

Apabila mengekstrak fail, anda mesti memberikan nama tepat mereka termasuk laluan, seperti dicetak oleh - --list ( -t ).

Mengekstrak satu atau lebih banyak direktori dari arkib adalah sama seperti mengekstrak fail:

tar -xf archive.tar dir1 dir2

tar -xf archive.tar README

tar: README: Not found in archive tar: Exiting with failure status due to previous errors

Mengekstrak Fail daripada Arkib Tar menggunakan Wildcard

Untuk mengekstrak fail dari arkib berdasarkan corak wildcard, gunakan - suis --wildcards dan petikan corak untuk mengelakkan shell daripada menafsirkannya.

Sebagai contoh, untuk mengekstrak fail yang namanya tamat dalam .js (fail Javascript), anda boleh menggunakan:

tar -xf archive.tar --wildcards '*.js'

Menambah Fail ke Arsip Tar Sedia Ada

Untuk menambah fail atau direktori ke arkib tar sedia ada, gunakan operasi --append ( -r ).

Sebagai contoh, untuk menambah fail bernama fail newfile ke newfile , anda akan menjalankan:

tar -rvf archive.tar newfile

Mengalih keluar Fail daripada Arkib Tar

Gunakan operasi --delete untuk mengeluarkan fail dari arkib.

Contoh berikut menunjukkan cara untuk menghapus fail file1 dari file1 ,:

tar --delete -f archive.tar file1

Kesimpulannya

Penggunaan yang paling biasa dari perintah tar ialah untuk membuat dan mengekstrak arkib tar. Apabila mengekstrak arkib menggunakan perintah tar -czf diikuti dengan nama arkib dan untuk membuat yang baru menggunakan tar -czf diikuti oleh nama arkib dan fail dan direktori yang anda mahu tambah ke arkib.

Untuk maklumat lanjut mengenai arahan tar, rujuk halaman dokumentasi Gnu tar.

terminal tar