GNU/Linux >> Belajar Linux >  >> Linux

Kompres folder dengan tar?

Ke tar dan gzip folder, sintaksnya adalah:

tar czf name_of_archive_file.tar.gz name_of_directory_to_tar

- dengan czf bersifat opsional.

Jika Anda ingin tar direktori saat ini, gunakan . untuk menunjuk itu.

Untuk membuat nama file secara dinamis, gunakan date utilitas (lihat halaman manualnya untuk opsi format yang tersedia). Misalnya:

cd /var/www &&
tar czf ~/www_backups/$(date +%Y%m%d-%H%M%S).tar.gz .

Ini akan membuat file bernama sesuatu seperti 20120902-185558.tar.gz .

Di Linux, kemungkinannya adalah tar Anda juga mendukung kompresi BZip2 dengan j bukan z pilihan. Dan mungkin yang lainnya. Periksa halaman manual di sistem lokal Anda.


Contoh Algoritma Kompresi Paling Umum

Judul pertanyaan untuk ini hanyalah "Kompres folder dengan tar?" Karena judul ini sangat umum, tetapi pertanyaan dan jawabannya jauh lebih spesifik, dan karena jumlah pandangan yang sangat besar yang menarik pertanyaan ini, saya merasa akan bermanfaat untuk menambahkan daftar contoh terbaru dari keduanya. pengarsipan/kompresi dan ekstraksi/unkompresi, dengan berbagai algoritme kompresi yang umum digunakan.

Ini telah diuji dengan Ubuntu 18.04.4. Mereka sangat sederhana untuk penggunaan umum, tetapi dapat dengan mudah diintegrasikan ke dalam konten pertanyaan OP yang lebih spesifik menggunakan teknik dalam jawaban yang diterima dan komentar bermanfaat di atas.

Satu hal yang perlu diperhatikan untuk audiens yang lebih umum adalah tar tidak akan menambahkan ekstensi yang diperlukan (seperti .tar.gz ) secara otomatis - pengguna harus menambahkannya secara eksplisit, seperti yang terlihat pada perintah di bawah:

# 1: tar (create uncompressed archive) all files and directories in the current working directory recursively into an uncompressed tarball
tar cvf filename.tar *

# 2: Untar (extract uncompressed archive) all files and directories in an uncompressed tarball recursively into the current working directory
tar xvf filename.tar

# 3: tar (create gzipped archive) all files and directories in the current working directory recursively into a tarball compressed with gzip
tar cvzf filename.tar.gz *

# 4: Untar (extract gzipped archive) all files and directories in a tarball compressed with gzip recursively into the current working directory
tar xvf filename.tar.gz # Note: same options as 2 above

# 5: tar (create bzip2'ed archive) all files and directories in the current working directory recursively into a tarball compressed with bzip2
tar cvjf filename.tar.bz2 * # Note: little 'j' in options

# 6: Untar (extract bzip2'ed archive) all files and directories in an tarball compressed with bzip2 recursively into the current working directory
tar xvf filename.tar.bz2 # Note: same options as 2 and 4 above

# 7: tar (create xz'ed archive) all files and directories in the current working directory recursively into a tarball compressed with xz
tar cvJf filename.tar.xz * # Note: capital 'J' in options

# 8: Untar (extract xz'ed archive) all files and directories in an tarball compressed with xz recursively into the current working directory
tar xvf filename.tar.xz # Note: same options as 2, 4, and 6 above

Lihat halaman manual tar (paling baik menggunakan man tar pada mesin spesifik Anda) untuk detail lebih lanjut. Di bawah ini saya merangkum opsi yang digunakan di atas langsung dari halaman manual:

-c, --buat
buat arsip baru

-x, --ekstrak, --dapatkan
ekstrak file dari arsip

-v, --verbose
dengan jelas mencantumkan file yang diproses

-z, --gzip
filter arsip melalui gzip

-j, --bzip2
filter arsip melalui bzip2

-J, --xz
filter arsip melalui xz

-f, --file=ARSIP
gunakan file arsip atau ARCHIVE perangkat

Tidak perlu menambahkan - di depan opsi gabungan, atau = tanda di antara f opsi dan nama file.

Saya mendapatkan semua ini dari artikel terbaru saya, yang akan dikembangkan lebih jauh menjadi artikel yang jauh lebih komprehensif karena saya punya waktu untuk mengerjakannya.


Linux
  1. Membuka file .tar.gz dengan satu perintah

  2. tar -C dengan pola file wildcard

  3. Format arsip yang diindeks?

  1. 16 Perintah Tar untuk Kompres dan Ekstrak File di Linux

  2. Cara mengompres/dekompresi di Linux

  3. Ukuran folder dengan du

  1. Cara tar (kompres) file, tidak termasuk file atau direktori tertentu

  2. Cara Mengarsipkan dan Mengompresi File di Linux

  3. Perintah tar Linux