Как Вы проверяете архив tar, который уже записан?

используйте команду "F" в то время как в меньше.

less mylogfile.txt
F

или, чтобы сделать так автоматически, используйте +cmd опцию:

less +F mylogfile.txt
15
23.06.2011, 05:42
4 ответа

Вы не можете использовать W с t.

mkdir tmp
echo bdb > tmp/a
echo bdb > tmp/b

tar cvf archive.tar tmp
tmp/
tmp/a
tmp/b

ls -l archive.tar
-rw-r--r-- 1 tony tony 10240 Jun 23 05:57 archive.tar

tar tvf archive.tar
drwxr-sr-x tony/tony         0 2011-06-23 05:57 tmp/
-rw-r--r-- tony/tony         4 2011-06-23 05:57 tmp/a
-rw-r--r-- tony/tony         4 2011-06-23 05:57 tmp/b

tar tvWf archive.tar
tar: This does not look like a tar archive
tar: Skipping to next header
tar: Exiting with failure status due to previous errors

Я верю t один достаточно для тестирования архива.

8
27.01.2020, 19:49
  • 1
    t один просто перечисляет содержание архива. Я хочу проверить, что файлы в tar имеют то же содержание как оригиналы (все еще в файловой системе), который я думал, был что W должен сделать (право?). –  cespinoza 24.06.2011, 01:01
  • 2
    W, делает это только при записи архива. Если Вы хотите удостовериться, что содержание является байтом для соответствия байта, необходимо будет извлечь его где-нибудь и разность/сумма файлы. –  EightBitTony 24.06.2011, 01:29
  • 3
    Не для меня: tar tvWf t.tar tar: --verify cannot be used with -t: tar (GNU tar) 1.27.1 –  Tom Hale 02.11.2016, 12:18

Шиллинги Joerg star щеголяет различной опцией, которая может сравнить файлы в архиве tar с их оригиналом. Можно заявить, что должно быть распознано как различие.

0 1 newt pts/1 ~ 17> :> tmp/testfile
0 1 newt pts/1 ~ 19> star -cz tmp > tmp.tar
0 1 newt pts/1 ~ 19> echo bla > tmp/testfile
0 1 newt pts/1 ~ 20> star -z -diff diffopts=not,times < tmp.tar
diffopts=perm,symperm,type,nlink,uid,gid,uname,gname,size,data,rdev,hardlink,symlink,sympath,sparse,dir,acl,xattr,fflags
tmp/testfile: different size,data
star: 115 blocks + 0 bytes (total of 1177600 bytes = 1150.00k).

Обратите внимание, что это упомянуло testfile как являющийся другого размера и данных. Если я не исключил времена (включая время доступа!) это указало бы время доступа также и также перечисляет все файлы, времена которых изменились только путем рассмотрения их.

Начиная с упадка BerliOS, star может быть найден в SourceForge. Это очень портативно, и компилирует безболезненно в большинстве unixoid систем и unixoid двойников.

3
27.01.2020, 19:49

GNU tar имеет a --compare опция. Посмотрите Сравнение членов Архива с разделом File System документации для деталей.

14
27.01.2020, 19:49
  • 1
    запуска, Например. tar -df /path/to/archive.tar.bz2 покажет различия между файлами в архиве и файловой системе, разрешая относительные пути в архиве против текущего рабочего каталога. программа –  Walf 02.03.2017, 03:01

Параметр проверки предназначен для использования во время создания, а не после. Кроме того, после этого добавляется сжатие.

%> tar -cvpWlf  test.tar sh.save
sh.save/
sh.save/test.tar
sh.save/Downloads/
sh.save/mount.sh
sh.save/Documents/
sh.save/skip_dirs_in_find.sh
Verify sh.save/
Verify sh.save/test.tar
Verify sh.save/Downloads/
Verify sh.save/mount.sh
Verify sh.save/Documents/
Verify sh.save/skip_dirs_in_find.sh

Хотя tar предлагает опцию «--сравнить».

man tar:

-d, --diff, --compare
Find differences between archive and file system. The arguments are optional and specify archive members to compare. If not given, the current working directory is assumed.

0
24.04.2021, 18:29

Теги

Похожие вопросы