Как применить эту команду к подпапкам?
bzip2.exe -z compressfolder/*.*
Как изменить его так, чтобы он выполнял свою работу с подпапками сжатой папки?
2 ответа
Это сожмет каждый файл в сжатой папке, рекурсивно:
for /r .\compressfolder %%a IN (*.*) do bzip2 -z %%a
for /r
вернется в каждую подпапку.\compressfolder. %%a
содержит каждый файл, указанный *.*
и следующая часть do
работает bzip2
на каждом файле. В приведенных выше примерах предполагается, что вы запустите это из родительской папки в папку сжатия. Поместите строку в пакетный файл, например. bzip2all.bat и запустите его.
Вам лучше использовать утилиту "найти", однако я не уверен, что она доступна в Windows в среде posix.
Тем не мение:
find compressfolder -type f -print0 | xargs -0 -n 1 bzip2 -z
Эта команда в любой системе * nix найдет каждый обычный файл в "compressfolder" и запустит "bzip2 -z" для каждого из файлов. Если вы используете Cygwin или Mingw (как я полагаю), он должен работать и на Windows.