2016-01-05 3 views
0

У меня есть папка, которая содержит пакетный файл с именем zip.bat со следующим кодом внутри:Архивирование файлов с 7z.exe

для/d %% X в (*) делают «C: \ Program Files (x86) \ 7-Zip \ 7z.exe»а "%% X.zip" "%% X \"

вопрос, который я имею с этой летучей мыши является то, что он молниеносно любую папку внутри папка, содержащая zip.bat, но то, что я действительно хочу сделать, это zip текстовые файлы, а не папки.

Может ли кто-нибудь направить меня на то, что я делаю неправильно?

Спасибо.

+0

Затем скажите об этом в текстовые файлы zip. Вы говорите ему, чтобы почтить папку. – Squashman

+0

Как это сделать? – Hereok

ответ

0

Ваш вопрос не очень ясен для меня.

Если вы хотите иметь каждую папку, содержащую TXT-файлы в отдельном зип-файл, который вы можете использовать:

for /d %%X in (*) do "C:\Program Files (x86)\7-Zip\7z.exe" a "%%X.zip" "%%X\*.txt" 

Если вы хотите, один зип-файл с именем, содержащий все TXT-файлы (со структурой папок) вы можете использовать:

"C:\Program Files (x86)\7-Zip\7z.exe" a -r txtfiles-%date%.zip "*.txt" 

Если вы хотите, один зип-файл с именем, содержащий TXT-файлы в текущей папке, где ваш CMD/пакетный файл расположен вы можете использовать:

"C:\Program Files (x86)\7-Zip\7z.exe" a txtfiles-%date%.zip "*.txt" 
+0

Я хочу закрепить только текстовые файлы, а не папки. – Hereok

+0

Что мне следует изменить в коде, чтобы он мог застегивать текстовые файлы, а не папки? – Hereok

+1

@Hereok, первая строка кода, которую он вам дал, - это zipping текстовые файлы. Второй - также текстовые файлы. – Squashman