> unrar Скрипт
 Lexus Member is Offline
 Posted: 08-08-2007, 00:45 (post 1, #770274)

Коллекционер
Group: Global Moders
Group: Global Moders
Posts: 10401
Имеется куча папок.

Нужен скрипт для унрара, который проходил бы по папкам и все папки которые содержат сочетание "DVDrip" распаковывал бы в мной указанаю папку.

Пока добился только этого, но этого мало:

1. распаковывается со всех папок.
2. если есть битый архив, то папка пропускается и всё идёт дальше.

FOR /R %%G IN (*.rar) DO unrar.exe e -o- %%G %1

Хотелось бы, чтобы в лог писалось, какая папка была с битым архивом и так же, чтоб папки с "DVDRip" обрабатывались.

Заранее спасибо!
PM Email Poster Users Website
Top Bottom
 FiL Member is Offline
 Posted: 08-08-2007, 01:00 (post 2, #770276)

Сварливый Мозг Клуба
Group: Roots
Group: Roots
Posts: 22872
1. название папки содержит DVDRip или название архива?
Если архива, то

FOR /R %%G IN (*DVDRip*.rar) DO unrar.exe e -o- %%G %1

Если папки и надо распаковывать все архивы в этой папке, то

FOR /D /R %%G IN (*) DO unrar.exe e -o- %%G\*.rar %1

2. a "> c:\unrar.log 2>&1" добавить к комманде не поможет? Потом в логе можно поискать ошибки...


P.S. Я не тестировал, не гарантирую.
PM Email Poster ICQ AOL MSN
Top Bottom
 Lexus Member is Offline
 Posted: 08-08-2007, 22:45 (post 3, #770429)

Коллекционер
Group: Global Moders
Group: Global Moders
Posts: 10401
Протестировал. Стало лучше, но

распаковывает из всех папок, а не из тек, название которых содержит "DVDRip"
и в лог пишется всё что происходит, а не только сообшение о какой-либо ошибке
PM Email Poster Users Website
Top Bottom
 FiL Member is Offline
 Posted: 09-08-2007, 05:51 (post 4, #770496)

Сварливый Мозг Клуба
Group: Roots
Group: Roots
Posts: 22872
ой, звиняй, конечно надо было
FOR /D /R %%G IN (*DVDRip*) DO unrar.exe e -o- %%G\*.rar %1

A log... а проблема потом из лога выкинуть то, что не надо?
Ну и можно вместо "> c:\unrar.log 2>&1" попробовать просто "2> c:\unrar.err" например.
PM Email Poster ICQ AOL MSN
Top Bottom
 Lexus Member is Offline
 Posted: 09-08-2007, 12:45 (post 5, #770557)

Коллекционер
Group: Global Moders
Group: Global Moders
Posts: 10401
Прогнал. Всё пашит. Теперь тока возникла проблема.

Если в той папке что содержит название DVDRip есть ещё подпапки: к примеру:

Die Hard_DVDRip/
CD1/
CD2/
Part3/
и в этих подпапках лежат рары, то скрипт игнорирует их (оно и ясно, так как тока на *DVDRip* натравлен.

Пробывал сделать так:
CODE
FOR /D /R %%A IN (*DVDRip*) DO (
FOR /D /R %%B IN (*) DO (
unrar.exe e -o- %%B\*.rar %1
)
)

Он гад сначало прохид все папки *DVDRIp* , а под конец ещё на раз проходит полностью всё что во всех папках, игнорируя условие *DVDRip*

PM Email Poster Users Website
Top Bottom
 inzerus Member is Offline
 Posted: 09-08-2007, 14:35 (post 6, #770576)

Talk too much

Group: News makers
Posts: 2219
Warn:0%-----
Может так нужно?

CODE
FOR /D /R %%A IN (*DVDRip*) DO (cd %%A&&
FOR /D /R %%B IN (*) DO (
unrar.exe e -o- %%B\*.rar %1
)&&
cd ..
)
PM
Top Bottom
 Lexus Member is Offline
 Posted: 09-08-2007, 15:47 (post 7, #770578)

Коллекционер
Group: Global Moders
Group: Global Moders
Posts: 10401
Выдал: The syntax of the command is incorrect.

UPD: убрал && и всё пошло :)
PM Email Poster Users Website
Top Bottom
Topic Options