0
У меня есть серия zip-архивов, из которых я хочу извлечь один текстовый файл в выходной каталог. файл находится в общей папке:Bash Partial Unsip of Archive in Loop
archive.zip/archive/summary.txt
У меня есть следующий код, который я думал, что должен работать:
for file in *.zip
do
name=${file##*/}
base=${name%.zip}
unzip -j $name/$base/summary.txt -d /$output/$file-summary.txt
done
Однако распаковать не может найти текстовые файлы.
** 1 ** Что значение "$ выход"? ** 2. ** Я бы выполнил чек с помощью 'sed -x' (или' bash -x yourscript' для вывода точной команды, которая будет работать после разбора и расширения. ** 3. ** «Двойная кавычка» каждого литерала который содержит пробелы/метасимволы и _every_ expand: «$ var», «$ (команда« $ var »)», «$ {array [@]}», «a & b». См. http: //mywiki.wooledge. org/Quotes, http://mywiki.wooledge.org/Arguments и http://wiki.bash-hackers.org/syntax/words. –
@RanyAlbegWein: Я думаю, что получаю вывод и извлекаю каталоги немного неправильно в команда unzip, и я также добавил двойные кавычки.Я добавлю код, который я получил, чтобы работать ниже в качестве ответа.Они могут когда-нибудь быть полезными для кого-то. – mattbawn
Отлично, я даже дам вам голосование! –