Saya tahu Anda dapat melakukan -W saat membuat arsip, tetapi bagaimana Anda memverifikasi dan arsip yang sudah dibuat? tvWf mengatakan itu bukan arsip tar yang valid?
$ mkdir tmp
$ echo asdkfjh > tmp/a
$ echo qweroiu > tmp/b
$ ls
tmp
$ tar cvf archive.tar tmp
tmp/
tmp/a
tmp/b
$ tar tvWf archive.tar
tar: This does not look like a tar archive
tar: Skipping to next header
tar: VERIFY FAILURE: 1 invalid header detected
tar: Error exit delayed from previous errors
Hal yang sama terjadi dengan tar 1.15 (yang merupakan default sistem pada centos 5) dan 1.26 (yang merupakan versi terbaru dari gnu).
t
sendiri hanya daftar isi arsip. Saya ingin memverifikasi bahwa file dalam tar memiliki konten yang sama dengan aslinya (masih pada sistem file), yang saya pikir adalah apa yangW
harus dilakukan (benar?).tar tvWf t.tar
tar: --verify cannot be used with -t
:tar (GNU tar) 1.27.1
GNU
tar
memiliki--compare
opsi. Lihat Membandingkan Anggota Arsip dengan bagian Sistem File pada dokumentasi untuk detailnya.sumber
tar -df /path/to/archive.tar.bz2
akan menunjukkan perbedaan antara file dalam arsip dan sistem file, menyelesaikan jalur relatif dalam arsip terhadap direktori kerja saat ini.Joerg Schillings
star
menggunakan opsi diff , yang dapat membandingkan file dalam arsip tar dengan aslinya. Anda dapat menyatakan apa yang harus diakui sebagai perbedaan.Perhatikan bahwa disebutkan
testfile
sebagai ukuran dan data yang berbeda. Jika saya tidak mengecualikan waktu (termasuk waktu akses!) Itu akan menyatakan waktu akses juga, dan juga daftar semua file yang waktu telah berubah hanya dengan melihatnya.Sejak kematian BerliOS,
star
dapat ditemukan di sourceforge . Ini sangat portabel, dan kompilasi tanpa rasa sakit pada sebagian besar sistem unixoid dan mirip-unixoid.sumber
schilytools
paket sumber.