Файл Gzip, но, исключая некоторый directories|files и также добавляет текущую дату

Использование:

md5sum 

Сравните результат со значением, перечисленным в https://packages.debian.org

0
01.03.2015, 22:41
2 ответа

Просто CD к папке, откуда вы хотите, чтобы создать структуру Tress Tarball, и использовать относительные пути! Так, например:

# Note, one folder above
cd /path/to/compress/..
# Tell tar to compress the relative path    
tar -zcvf /path/to/compressed/file.tar.gz compress

Когда вы распадаете, он будет создан папку Compress в текущем рабочем каталоге.

Вы можете исключить файлы или папки, используя опцию - Exclude , и добавьте дату в имею имени файла с датой Дата + формата , например:

FILENAME="file-`date +%d-%m-%Y-%T`.tgz"
tar -zcvf /path/to/compressed/$FILENAME --exclude cache --exclude logs --exclude bootstrap.php.cache compress
2
28.01.2020, 02:28

с GNU TAR Вы можете использовать:

--transform=EXPRESSION, --xform=EXPRESSION
      Use sed replace EXPRESSION to transform file names.

, что означает - XForm = 's | путь / к / ||' будет удалять путь / к / с пути;
И

--exclude=PATTERN
      Exclude files matching PATTERN, a glob(3)-style wildcard pattern.

Итак, вы можете запустить:

tar -zcvf /path/to/compressed/"$(date +%d-%m-%Y-%T)"-testdir.tar.gz \
--transform='s|^path/to/||' /path/to/compress \
--exclude='cache' --exclude='logs' --exclude='bootstrap.php.cache'

Обратите внимание, что нет ведущих / в выражении, используемом с XForm . Более универсальный подход:

--xform='s|^([^/]*/){2}||x'

, который будет набрать первые два элемента пути (заменить 2 с другим номером - по мере необходимости).

1
28.01.2020, 02:28

Теги

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