Войти

Показать полную графическую версию : [решено] bat для поиска файла и выполнения действий над искомым файлом


DJIOAN
22-07-2015, 08:25
Доброго времени суток! помогите решить проблему, пытаюсь сделать bat , он вроде находит но при попытке произвести действие не получается, чтоб он к примеру запускал файл. Если файл который нужно открыть лежит в той же директории то он его открывает, если на разных дисках вроде находит файл но не находит пути для его запуска. Подскажите как связать
Вот так выглядит мой набросок (я повторюсь я самоучка)
@echo off
chcp 866 > nul

set name=sdddd.txt

:test
echo Поиск файла ****** 1111.bat ****** на диске = C =
dir "C:\" /S | find "%name%"
ping 127.0.0.1 -n 3 > nul
echo Поиск файла ****** 1111.bat ****** на диске = D =
dir "D:\" /S | find "%name%" | goto R
if exist %name% do ( start sdddd.txt
) else (
echo "WARNING !!! ERROR" )

:R
start sdddd.txt

if not errorlevel 0 goto go
pause

Georgio
22-07-2015, 09:58
@echo off

set "name=sdddd.txt"

>nul chcp 1251
set message_1=Поиск файла "%name%" на диске "%%i"...
set message_2=Файл "%%j" на диске "%%i" найден и будет открыт.
set message_3=Файл "%name%" на диске "%%i" не найден.
>nul chcp 866

:test
for %%i in (C D) do (
echo %message_1%
(
for /f "delims=" %%j in ('2^>nul dir/a-d/b/s "%%i:\%name%"') do (
echo %message_2%& echo.
start "" "%%j"& goto continuation
)
)|| echo %message_3%& echo.
)

:continuation
pause

DJIOAN
22-07-2015, 10:15
Спасибо! Супер отработал на ура! теперь буду разбираться в переменных чтоб полностью понимать что к чему :clapping: :up :oszone:




© OSzone.net 2001-2012