Обновить файл внутри zip-архива с помощью -u

Обновить файл внутри zip-архива с помощью -u

Итак, у меня на рабочем столе есть zip-файл с именем data.zip. Внутри test.zip есть еще одна папка с именем res, а внутри res есть файл с именем info.txt. Я уже использовал команду zip -u, чтобы переместить файл внутри zip, но только в корень zip. Я хочу переместить новую версию info.txt с рабочего стола в папку res в data.zip. Мне это нужно для части скрипта, над которым я работаю. Как это сделать или функция -u будет работать только для корня? Спасибо за любую помощь в том, как это сделать.

решение1

Используйте -jопцию (джunk the pathname), если вы хотите указать корень zip-файла; чтобы указать подкаталог, вам нужно будет упорядочить текущий каталог таким образом, чтобы относительный путь от него до файла соответствовал относительному пути внутри zip-файла. Что-то вроде этого:

mkdir res
cp $DESKTOP/info.txt res
zip -u data.zip res/info.txt
rm -rf res

Связанный контент