Intereting Posts
Нужен ли мне графический процессор NVidia локально, если я только синхронизирую проекты для создания удаленных сборок по целям? Удалите директорию с файлами с бессмысленными именами файлов Приостановка моего ноутбука ломает Ethernet поверх FireWire, есть ли команды, которые могут это исправить? Удалите значок уведомлений или сделайте уведомления затухающими через некоторое время Apache отключает SSLv2 SSLv3 Согласно статистике сокетов Apache слушает только на IPv6, но на самом деле также обслуживает IPv4 Lilo делает много шума на диске Можно ли сделать символическую ссылку файла на другой машине? GRUB смешивает ядра / initramfs установки Ubuntu и Arch Linux как передать несколько команд в sqlite3 в одной команде оболочки liner Использует ли потоки все еще считающиеся анти-шаблонами? Сценарий оболочки с трубами, не работающими в crontab «Эта веб-страница недоступна» после «shutdown -r now» Эмулировать отсоединение сетевого кабеля с помощью qemu-kvm Скрипт работает на Mac, но не Ubuntu

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

Я знаю, что вы можете делать -W при создании архива, но как вы проверяете и уже создали архив? tvWf говорит, что это не действительный tar-архив?

$ 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 

То же самое происходит и с tar 1.15 (который является системным значением по умолчанию для centos 5) и 1,26 (что является самой новой версией из gnu).

Вы не можете использовать 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 

Я считаю, что одного достаточно, чтобы проверить архив.

GNU tar имеет опцию --compare . Подробнее см. В разделе « Сравнение участников архивации с файловой системой » в документации.

Звездочка Йорга Шиллингса имеет опцию diff , которая позволяет сравнивать файлы в архиве 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). некоторый 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 похожих изображений.