CMD/BAT - [решено] Батник поиск->запуск
-
Harik
CMD/BAT - [решено] Батник поиск->запуск
Всем доброго времени суток. Возникла задачка. Нужно написать батник, функция которого - поиск конкретной программы. Местонахождение по условиям задачи не известно. Через tasklist произвести поиск на предмет присутствия приложения в списке задач. Если программа запущена, то всё ок, ECHO "сообщение". Если программа не запущена, то выполнить её запуск. Так вот, сопсно, не могу сообразить, как это прописать. Помогите плз
-
amel27
Re: CMD/BAT - [решено] Батник поиск->запуск
Цитата Harik:
Местонахождение по условиям задачи не известно.
странная постановка задачи - в интернете икать?.. имя известно?
Местонахождение по условиям задачи не известно.
CMD/BAT - [решено] Батник поиск->запуск
странная постановка задачи - в интернете икать?.. имя известно?
-
Harik
Re: CMD/BAT - [решено] Батник поиск->запуск
более менее адекватный скрипт Foreigner'а
Код:
Однако не могу запустить программу при условии её нахождения. Наверное я что-то не так делаю!?
Код:
Код:
Код: Выделить всё
@echo off
setlocal
set /p file="File to find: "
call:search "%file%"
goto:eof
:search
set "name=%~n1"
set "ext=%~x1"
set "wmic=wmic datafile where (filename="%name%" AND extension="%ext:~1%") get name /value"
for /f "tokens=2 delims==" %%i in (' "%wmic%" ') do echo %%iОднако не могу запустить программу при условии её нахождения. Наверное я что-то не так делаю!?
Код:
Код: Выделить всё
if exist "%file%" start "%file%" else echo "%file%" missing-
Harik
Re: CMD/BAT - [решено] Батник поиск->запуск
имеется ввиду, неизвестно, на каком диске располагается программа и в каком каталоге. Слишком просто было бы, зная весь путь. Имя известно. В принципе, по скольку задача абстрактная, то это может быть любой исполнительный файл. Однако, как описано выше, батнику не нужно говорить прямой путь к файлу. Он его должен найти по критерию "имя файла"
-
Harik
Re: CMD/BAT - [решено] Батник поиск->запуск
Цитата Harik:
Слишком просто было бы, зная весь путь.
пример поиска файла по всем дискам (включая сетевые):
Код:
Слишком просто было бы, зная весь путь.
CMD/BAT - [решено] Батник поиск->запуск
пример поиска файла по всем дискам (включая сетевые):
Код:
Код: Выделить всё
@Echo Off
Set EXE=Notepad.EXE
(WMIC Path CIM_DataFile Where "Extension='EXE' AND Name LIKE '%%\\%EXE%'" Get Name /Value
)|Find "="
Pause>Nul-
amel27
Re: CMD/BAT - [решено] Батник поиск->запуск
Цитата Harik:
Почему программа запускается в фоновом режиме?
Потому что у программы at.exe есть параметр /interactive, который позволяет видеть окно приложения, запущенное в окружении SYSTEM.
Код:
Почему программа запускается в фоновом режиме?
CMD/BAT - [решено] Батник поиск->запуск
Потому что у программы at.exe есть параметр /interactive, который позволяет видеть окно приложения, запущенное в окружении SYSTEM.
Код:
Код: Выделить всё
at /?-
Foreigner
Re: CMD/BAT - [решено] Батник поиск->запуск
amel27, у меня скрипт выдаёт ошибку (Window XP SP3). Можно ли сделать поисковик, чтобы в командной строке вбивать искомый файл, а в итоге получить пути, где он найден.
-
sov44
Re: CMD/BAT - [решено] Батник поиск->запуск
amel27, у меня скрипт выдаёт ошибку (Window XP SP3). Можно ли сделать поисковик, чтобы в командной строке вбивать искомый файл, а в итоге получить пути, где он найден.
-
Foreigner
Re: CMD/BAT - [решено] Батник поиск->запуск
sov44,
Попробуйте так:
Код:
Попробуйте так:
Код:
Код: Выделить всё
@echo off
setlocal
set /p file="File to find: "
call:search "%file%"
goto:eof
:search
set "name=%~n1"
set "ext=%~x1"
set "wmic=wmic datafile where (filename="%name%" AND extension="%ext:~1%") get name /value"
for /f "tokens=2 delims==" %%i in (' "%wmic%" ') do echo %%i-
sov44
Re: CMD/BAT - [решено] Батник поиск->запуск
Цитата sov44:
у меня скрипт выдаёт ошибку (Window XP SP3)
проблема не в скрипте, а в системе (конкретно - служба WMI), подробную инфу ищите в журналах событий
по вопросам оздоровления Windows - в другую ветку
у меня скрипт выдаёт ошибку (Window XP SP3)
CMD/BAT - [решено] Батник поиск->запуск
проблема не в скрипте, а в системе (конкретно - служба WMI), подробную инфу ищите в журналах событий
по вопросам оздоровления Windows - в другую ветку