Peta "untar" ke tar xvfz?

14

Bagaimana saya bisa memetakan 'untar' sebagai perintah untuk 'tar -xvfz'? Maaf, tapi saya hampir selalu lupa argumen yang diperlukan untuk 'tar' untuk operasi ini.

meder omuraliev
sumber

Jawaban:

25

alias untar='tar -xvzf'

Tempatkan dalam file .bashrc Anda untuk tetap ada di seluruh sesi login / shell, atau di file /etc/bash.bashrc Anda untuk bertahan untuk login dari semua pengguna di sistem Anda.

John Ledbetter
sumber
5
Bergantung pada sistem Operasi Anda, Anda mungkin ingin mengabaikan parameter -z. Setidaknya pada debian tar secara otomatis mendeteksi tipe kompresi dan menggunakan -z pada file tar yang tidak dikompresi dengan gzip menyebabkan kesalahan di sana
Caotic
Juga, opsi -z adalah ekstensi GNU.
Richard Hoskins
1
@Richard: subby memberi tag Linux @ledbettj: opsi z tidak perlu pada gnu tar baru-baru ini (<4 tahun, setidaknya), ini ditangani secara otomatis dan tidak serak jika tidak ada gzipping atau jika bzipp'd sebagai gantinya. Juga "-" tidak perlu dan tidak mencetak peringatan pada kesempatan.
niXar
19

Anda mungkin juga tertarik dengan yang berikut ini:

x(){
    if [ -f $1 ] ; then
            case $1 in
                    *.tar.bz2)   tar xvjf $1    ;;
                    *.tar.gz)    tar xvzf $1    ;;
                    *.bz2)       bunzip2 $1     ;;
                    *.rar)       unrar x $1     ;;
                    *.gz)        gunzip $1      ;;
                    *.tar)       tar xvf $1     ;;
                    *.tbz2)      tar xvjf $1    ;;
                    *.tgz)       tar xvzf $1    ;;
                    *.zip)       unzip $1       ;;
                    *.Z)         uncompress $1  ;;
                    *.7z)        7z x $1        ;;
                    *)           echo "Unable to extract '$1'" ;;
            esac
    else
            echo "'$1' is not a valid file"
    fi
}

Dengan kode di atas di .bashrc Anda, mengetikkan xdiikuti dengan nama file akan mengekstrak sebagian besar arsip yang Anda temui (dengan asumsi Anda memiliki paket yang diperlukan untuk mengekstrak jenis arsip itu).

CATATAN: Kode ini sedikit dimodifikasi dari apa yang saya temukan di sini sejak lama.

Richie Marquez
sumber
1
Wow. itu luar biasa juga.
meder omuraliev
.rar telah dimasukkan dua kali. Saya tidak berpikir versi kedua akan pernah dieksekusi. Atau akankah itu?
Wolf,
Maaf, baris * .rar kedua tidak boleh ada di sana; itu tidak akan pernah dieksekusi.
Richie Marquez
Dengan catchall di akhir blok kasus, akankah blok lainnya dipicu?
killermist
2

Saya selalu mengingatnya dengan mengatakannya dengan keras:
tar e X tract Z ip F ile V erbose

Serigala
sumber
1
Bagi saya secara sadar mengingat ini bukan masalah karena jari tangan kiri saya "secara otomatis" muncul dengan "zxfv" ... :)
Jonik
@Jonik so true ^^
Oskar Duveborn
1

Anda harus mencoba dtrx- ini akan menghasilkan argumen yang tepat untuk banyak jenis file, termasuk "tar, zip, cpio, deb, rpm, gem, 7z, cab, rar, gz, bz2, lzma, xz, dan banyak jenis file exe, termasuk arsip Kabinet Microsoft, arsip InstallShield, dan file zip yang diekstraksi sendiri. " Itu juga menempatkan konten ke dalam satu direktori, terlepas dari apakah arsip itu dikemas seperti itu atau tidak.

TRS-80
sumber
Bahkan tidak ada di repo Ubuntu. Bukan cara yang bagus untuk instalasi!
Lakshman Prasad
Itu hanya ditambahkan ke Debian awal tahun ini, jadi itu hanya dalam karma, tetapi Anda harus dapat menginstal deb. Pada jaunty tanpa masalah.
TRS-80
1

Apakah tidak ada orang lain yang menggunakan atool ? Ini adalah alat baris perintah untuk pengarsipan dan ekstraksi format-agnostik.

Untuk membongkar arsip yang didukung: aunpack archive.zip Untuk mengemas file ke dalam arsip yang didukung: apack archive.tar.bz2 *.txt Untuk membuat daftar file dalam arsip yang didukung:als archive.tgz

Saya tidak ingat kapan terakhir kali saya langsung menggunakan alat khusus arsip apa pun.

Ryan C. Thompson
sumber