Извлечение нескольких файлов 7z с автоматическим переименованием
У меня есть куча файлов 7z, некоторые из которых содержат файлы с одинаковыми именами. Поэтому я бы хотел сделать авто переименование.
Я могу сделать что-то вроде
find ./all -exec 7z x -pabc123 -oall/xml {} \;
чтобы извлечь все файлы, но для каждого архива запрашивается, хочу ли я их автоматически переименовывать. Есть ли способ, которым я могу просто спросить меня об этом? Или еще лучше, передать это в качестве параметра командной строки?
(Обратите внимание, что я должен использовать семь почтовых индексов, потому что у него есть пароль.)
1 ответ
Из руководства по p7zip:
-aoПереключатель режима перезаписиЗадает режим перезаписи во время извлечения, чтобы перезаписать файлы, уже имеющиеся на диске.
Синтаксис
-ao[a | s | t | u ]Описание переключателя
-aoaПерезаписать все существующие файлы без запроса.-aosПропустить распаковку существующих файлов.-aouПереименовать распаковывающий файл (например,name.txtбудет переименован вname_1.txt).-aotавтоматическое переименование существующего файла (например,name.txtбудет переименован вname_1.txt).Примеры
7z x test.zip -aoaизвлекает все файлы из
test.zipархивировать и перезаписывать существующие файлы без каких-либо подсказок.Команды, которые можно использовать с этим переключателем
e(Выдержка),x(Извлечь с полными путями)Смотрите также
Переключатели:
-y(предположим, да на все запросы)
Похоже, либо -aou или -aot включить 7z Команда будет делать то, что вы хотите, например:
find all -exec 7z x -aou [OPTIONS...] {} \;