Как архивировать каталог без переноса / path / to / folder?

15

Пример команды:
$ tar -cvjf destination.tar.bz2 /path/to/folder/source

Я хотел бы, чтобы окончательный вариант destination.tar.bz2, когда извлечено, не включал /path/to/folder/каталог файлов. Кажется неэффективным извлекать tarball и затем перемещать содержимое /path/to/folder/sourceв другой каталог.

бутылки
источник
связанные: stackoverflow.com/questions/18681595/…
Сиро Сантилли 新疆 改造 中心 法轮功 六四 事件

Ответы:

19

tar -C /path/to/folder -cvjf /path/for/acrhive.tar.bz2 source

-C (верхний регистр) означает «изменить каталог», поэтому спецификация вашего файла становится относительной к пути, указанному в -C

тонкий лед
источник
Имейте в виду, что путь, который вы указываете для «источника», относится к «-C». Например, это то, что написал @thinice, просто если вы по-прежнему предоставляете абсолютный путь вместо относительного, даже когда используете "-C", вы не получите желаемого результата.
GuyPaddock
4

Есть много способов сделать это, но это, вероятно, самый простой:

cd /path/to/folder
tar -cvjf /past/to/destination.tar.bz2 source
Крис С
источник