Создайте архив из каталога без добавления имени каталога в архив
У меня есть следующая структура папок
- корень
- folder1
- folder2
- folder3
- 7za.exe
Я хочу запустить инструмент командной строки 7-zip, чтобы закрепить все файлы в папке1 в zip-файле с именем folder1.zip
.
Выполнение следующих
- Инкрементное резервное копирование с 7zip
- Коррумпированные файлы PNG после распаковки
- Добавить в 7-Zip-архив: как исключить определенные типы файлов / расширения?
- Как извлечь 7z zip и иметь правильную структуру директории?
- Как сделать файл 7za без указания имени архива
7za.exe a -tzip folder1.zip folder1\\*.*
Создает zip-файл, как ожидалось. Однако, когда я открываю zip-файл, у него есть папка в нем, называемая «folder1», и внутри этого я имею все перечисленные файлы. Я не хочу, чтобы имя папки было добавлено в папку zip, то есть добавьте все файлы в формате «Плоский».
Я также не хочу рекурсивно запускать инструмент командной строки для каждого отдельного файла. Есть ли переключатель, который обеспечивает эту функциональность?
- Как собрать zip-файл, который был отправлен по электронной почте в нескольких частях?
- Как перезаписать существующий файл в 7zip?
- Как сжать файл изображения JPG
- Насколько легко восстановить несжатые данные, если один сектор поврежден в архиве 7zip?
- Как отключить вывод 7-Zip?
- Извлечение рекурсивно с использованием 7-Zip
- Команда 7zip не извлекает в указанный выходной каталог
- 7-Zip для извлечения папки из архива
Из файла справки 7-Zip:
Команда (Добавить)
Добавляет файлы в архив.
Примеры
7z a archive1.zip subdir\
Добавляет все файлы и подпапки из папки subdir в архив archive1.zip. Имена файлов в архиве будут содержать префикс subdir \.
7z a archive2.zip .\subdir\*
Добавляет все файлы и подпапки из папки subdir в архив archive2.zip. Имена файлов в архиве не будут содержать префикс subdir \.
cd /D c:\dir1\
7z ac:\archive3.zip dir2\dir3\
Имена файлов в архиве c: \ archive3.zip будут содержать dir2 \ dir3 \ prefix, но они не будут содержать c: \ dir1 \ prefix.
Таким образом, вам нужно будет: 7za.exe a folder1.zip .\folder1\*
Также обратите внимание на обработку 7-Zip подстановочных знаков. Он не обрабатывает *.*
Как «все файлы» – это означает «все файлы с периодом в имени файла». Файлы без расширения будут пропущены. Если вы действительно хотите все файлы, просто используйте *
вместо этого.
Наконец, параметр -tzip
не нужен, если имя файла архива заканчивается на .zip
. 7-Zip достаточно умен, чтобы выяснить, какой формат вы хотите в этих случаях. Это требуется только в том случае, если вы хотите создать собственное расширение (например, 7za.exe a -tzip foo.xpi <files>
для дополнения Mozilla).
Это сработало для меня
Рассмотрим структуру папок, такую как C: \ Parent \ SubFolders ….. И вы хотите создать parent.zip, который будет содержать все файлы и папки C: \ Parent без родительской папки [т.е. он начнется с SubFolders …..]
cd /D "C:\Parent" "7z.exe" a Parent.zip "*.*" -r
Это создаст Parent.zip в C: \ Parent
Как насчет этого. Например, Folder / subFolder1, Folder / subfolder2
Выберите всю подпапку> rightclick, затем создайте архив> выберите любой формат
* Имя архива будет родительской папкой.
Просто так?