tar cvf /var/lib/backup/sample.tar /home/user/.project
Тем не менее, когда я извлекаю, я получаю его родителей, а также
/backup/
- /home/
- /user/
- .project/
Эта команда tar выполняет свою работу, потому что она не включает ничего в свои родительские объекты (например, в другие папки user
).
Я хочу сделать это программно, поэтому изменение текущего рабочего каталога на /home/user/
самом деле не вариант. Возможно ли это сделать?
-C
переключатель, когда просматривал справочную страницу , но не мог понять этого ... звучало для меня больше похоже на то, как его будут использовать во время унтара. Узнал что-то новое.Я думаю, что если вы
cd
перейдете в каталог верхнего уровня, из которого вы хотите создатьtar
файл, у вас не должно быть этой проблемы. То есть,cd
доuser
иtar
вверх.project
.. вы можете указать место назначения для файла tar в/var/...
как и раньше.Или есть причина , вы не хотите / не могу
cd
кuser
?источник
os.chdir(base_dir)
в моем коде все время :), поэтому было бы хорошо, если есть выход из этого. СпасибоKevin
помог мне с правильной командой. Поэтому я дам ему галочку. Но я проголосовал за тебя. Спасибо!