Войти

Показать полную графическую версию : [решено] Запуск *.exe файлов.


Страниц : [1] 2

SharkyEXE
31-10-2009, 10:21
Здравствуйте. Прошу, подскажите, как реализовать следующее: имеется папка, например C:\Temp, а эта папка содержит подпапки и файлы различных расширений. Как мне при помощи батника ходить в подпапки, находящиеся в папке C:\Temp\ и запускать только файлы, имеющие расширение *.exe?

Или что-то вроде этого: найти в папке C:\Temp все файлы, имеющие расширение *.exe и поочередно их запускать. Надеюсь, моя задумка всем понятна.

PS. *.exe файлы в моем случае являються sfx архивами winrar.

Батник следующего содержвания (пытался его использовать):
cd /d C:\Temp\123\
start *.exe
не работает.

Petya V4sechkin
31-10-2009, 10:30
@Echo Off
SetLocal EnableExtensions

For /R C:\Temp %%I In (*.exe) Do Start /Wait "" "%%I"

SharkyEXE
31-10-2009, 11:54
Petya V4sechkin
Спасибо за помощь.

SharkyEXE
05-06-2010, 13:59
Тема поднята вновь всвязи с необходимостью делать всё тоже самое, что указано в 1м сообщении данной моей темы на форуме, но только:
1) для файлов с расширением *.7z (в моем случае, созданы при помощи программы 7-Zip 9.14 beta (http://forum.oszone.net/thread-62044.html));
2) т. к. файлы являются архивами, то их надо распаковывать, например, в папку C:\Tester\.

Здравствуйте. Прошу, подскажите, как реализовать следующее: имеется папка, например C:\Temp\, а эта папка содержит подпапки и файлы различных расширений. Как мне при помощи батника ходить в подпапки, находящиеся в папке C:\Temp\ и распаковывать, например, в папку C:\Tester\ только файлы, имеющие расширение *.7z?

Или что-то вроде этого: найти в папке C:\Temp\ все файлы, имеющие расширение *.7z и поочередно их распаковывать, например, в папку C:\Tester\. Надеюсь, моя задумка всем понятна.

PS. *.7z файлы, в моем случае, созданы при помощи программы 7-Zip 9.14 beta (http://forum.oszone.net/thread-62044.html).

Спасибо.

gora
05-06-2010, 15:20
@Echo Off
Set Path7zip=c:\Program Files\7-Zip\7z.exe
Set SrsFolder=C:\Temp
Set OutFolder=C:\Tester

For /R "%SrsFolder%" %%I In (*.7z) Do "%Path7zip%" x "%%I" -o"%OutFolder%\%%~nI" -aoa >Nul
pause>Nul В папке OutFolder будут создаваться папки с именем исходного архива и каждый архив будет распаковываться в свою папку.

SharkyEXE
05-06-2010, 15:25
gora
А возможно ли использование вот таких файлов (http://forum.oszone.net/attachment.php?attachmentid=45764&d=1275737083) для распаковки файлов-архивов с расширением *.7z? Если да, то код будет вот таким?
@Echo Off
REM В нижеследующей строке подразумевается, что файлы 7-zip32.dll и un7zip.exe из архива скачать (http://forum.oszone.net/attachment.php?attachmentid=45764&d=1275737083) находятся в папке c:\BIN\
Set Path7zip=c:\BIN\un7zip.exe
Set SrsFolder=C:\Temp
Set OutFolder=C:\Tester

For /R "%SrsFolder%" %%I In (*.7z) Do "%Path7zip%" x "%%I" -o"%OutFolder%\%%~nI" -aoa >Nul
pause>Nul

gora
05-06-2010, 15:34
SharkyEXE, проще использовать автономный архиватор 7zr.exe, входит в 7z914_extra (http://sourceforge.net/projects/sevenzip/files/).

cleric1985_n
13-09-2010, 20:21
Подскажите, как реализовать запуск файла, но без указания полного пути, а находящегося рядом с батником!?

kiripanda
13-09-2010, 20:44
%~dp0\файл.exe

Mishechka
29-10-2010, 18:36
Petya V4sechkin, а можно ли сделать то же самое:


@Echo Off
SetLocal EnableExtensions

For /R C:\Temp %%I In (*.exe) Do Start /Wait "" "%%I"


Но не из батника, а из командной строки?

Спасибо.

gora
29-10-2010, 18:39
не из батника, а из командной строки »cmd /c For /R C:\Temp %I In (*.exe) Do Start /Wait "" "%I"

Mishechka
29-10-2010, 18:53
gora, Сообщает, что Виндовс не удалось найти "For"...

gora
29-10-2010, 18:56
Mishechka, поправил

Mishechka
29-10-2010, 19:47
gora, Моргнуло консольное окно и ничего не запустилось...

gora
29-10-2010, 21:24
ничего не запустилось »
Запускаемые файлы должны у Вас лежать в папке C:\Temp. Они там есть?
Эти файлы запускаются двойным щелчком?
Запустите так и посмотрите, что пишет в консольном окне:cmd /k For /R C:\Temp %I In (*.exe) Do Start /Wait "" "%I"

Mishechka
29-10-2010, 22:29
Я взял и бросил в папку Temp любой EXE и всё сработало, как с первым кодом, так и со вторым.
Но тогда почему не работало когда я указывал другой адрес?

Спасибо.

Iska
30-10-2010, 05:59
когда я указывал другой адрес »
Вместо «C:\Temp»? Возможно, указанный Вами путь содержал пробельные символы в пути. Можно использовать кавычки, наподобие:
cmd.exe /k for /r "%ProgramFiles%" %i in (*.exe) do @echo "%i"

Mishechka
01-11-2010, 10:45
Iska, работает, но ищет (*.exe) только в папке:

C:\Documents and Settings\Boss>Start /Wait "" "%I"
Не удается найти файл %I.

хотя я указываю другой адрес.

Да Вы знаете мою проблему по другой теме http://forum.oszone.net/post-1530063.html#post1530063

Мне нужно запускать exe-файл, который, в свою очередь, будет запускать cmd-файл, который удалит папку:

RD "%ProgramFiles%\Xenocode".

Или запускать exe-файл с условием, что после его запуска эта папка удалится, при условии, что папка пуста.

Спасибо.

rerz
22-01-2012, 22:00
нужно запустить с флешки программу MPR в фоновом режиме, и уж совсем было бы здорово, если бы эта прога автоматически сохраняла пароли в корне флешки???

zyabrev
02-04-2019, 09:47
Здравствуйте.
Прошу подсказать, как применить тему оформления
с исполнением в теневой форме с утилитой cmdow.exe,
где:

@echo off
start /wait %systemroot%\Resources\Themes\aero.theme - запуск темы
cmdow.exe ЏҐаб®**«Ё§*жЁп /CLS - закрытие окна "Персонализация"
exit - выход

Что бы не отображалось окно "Персонализация" при выполнении.

Спасибо.




© OSzone.net 2001-2012