2013-04-28 3 views
2

У меня есть файл, который размещен в следующем каталоге:Bash - переместить файл в определенный путь внутри архива

folder/another_folder/file_to_add.xml 

Теперь, что я хочу сделать, это просто добавить файл в папку почтовый

Например это мое почтовое содержание:

my_zip.zip/folder/another_folder 

Как я могу добавить 'file_to_add.xml' к 'anot her_folder '?

my_zip.zip/folder/another_folder/file_to_add.xml 

Важно!

Я не хочу создавать папки с одинаковыми именами и добавлять их.

Есть команда, которая позволяет мне это делать?

Благодаря

+0

Это очень интересный вопрос. Возможно, он получит больше ответов, если будет перенесен на http://unix.stackexchange.com/, где скрипты bash часто обсуждаются широко. –

+0

В какой папке находится папка zip? –

+0

В той же папке с папкой: /home/my_zip.zip -/home/folder –

ответ

1

Вы можете вызвать питон для этого:

#!/bin/bash 
python -c ' 
import zipfile as zf, sys 
z=zf.ZipFile(sys.argv[1], "a") 
z.write(sys.argv[2], sys.argv[3]) 
z.close() 
' my_zip.zip your/existing/file_to_add.xml directory_in_zip/file_to_add.xml 

Это откроет my_zip.zip и добавить your/existing/file_to_add.txt из файловой системы, как directory_in_zip/file_to_add.xml в файле почтового индекса.

Смежные вопросы