2013-05-30 2 views
0

Я пытаюсь сжать каталог вИзменения рабочий каталог в Linux

/home/cyrus/sql 

И я хотел, чтобы изменить рабочий каталог, когда сжать папку:

/ $ zip -b /home/cyrus sql.zip /home/cyrus/sql 

Но когда я проверяю почтовый индекс файл:

/$ unzip -l sql.zip 

Archive: sql.zip 
    Length  Date Time Name 
--------- ---------- ----- ---- 
     0 2013-05-30 10:59 home/cyrus/sql/ 
    1776642 2013-05-23 10:22 home/cyrus/sql/wordpress.sql 
---------      ------- 
    1776642      2 files 

Корневой каталог должен быть sql. Что я сделал не так?

ответ

2

От человека молнией:

-b path 
    --temp-path path 

Используйте указанный путь для временного архива ZIP. Например:

zip -b /tmp stuff * 

поставит архив временный почтовый в каталоге/TMP, копирование через stuff.zip текущего каталога, когда сделано. Эта опция полезна при обновлении существующего архива, и файловая система, содержащая этот старый архив, не имеет достаточно места для хранения как старых, так и новых архивов одновременно. Это также может быть полезно при потоковой передаче в некоторых случаях, чтобы избежать необходимости в дескрипторах данных. Обратите внимание, что использование этой опции может потребовать, чтобы zip потребовалось дополнительное время для копирования архивного файла, когда он был сделан в целевую файловую систему.

По умолчанию zip хранит полный путь относительно текущего каталога. Если вы хотите, чтобы ваш zip-файл имел ваш каталог sql в качестве корня, вам нужно запустить команду из каталога/home/cyrus.