Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   найти файл и записать в переменную (http://forum.oszone.net/showthread.php?t=251807)

pzh2393 19-01-2013 00:42 2070020

найти файл и записать в переменную
 
Подскажите, пожалуйста" как сделать поиск файла на диске с которого запущен "БАТник", а затем записать путь к нему и его имя с расширением в качестве переменной, чтобы была возможность дальше использовать в коде?

Iska 19-01-2013 03:55 2070089

Например, так:
Код:

@echo off
setlocal enableextensions enabledelayedexpansion

for /r "%~d0\" %%i in (SomeFile.Ext) do (if exist "%%~fi" set sPath=%%~fi& goto :Break)

:Break
if defined sPath echo [%sPath%]

endlocal
exit /b 0


pzh2393 19-01-2013 18:52 2070444

Спасибо!
а можно ещё чтобы этот путь передавало в другой бантик, вызываемый из этого?

zion87 19-01-2013 20:15 2070476

Цитата:

Цитата pzh2393
вызываемый из этого? »

вас интересует команда call "Вызов одного пакетного файла из другого"
Код:

call :next %sPath%
или же start "Запуск указанной программы или команды в отдельном окне"
Код:

start "" другой.bat %sPath%
получаем параметр в другой.bat
Код:

@echo off
echo %1
pause


Iska 19-01-2013 23:24 2070615

Цитата:

Цитата pzh2393
а можно ещё чтобы этот путь передавало в другой бантик, вызываемый из этого? »

Код:

@echo off
setlocal enableextensions enabledelayedexpansion

for /r "%~d0\" %%i in (SomeFile.Ext) do (if exist "%%~fi" set sPath=%%~fi& goto :Break)

:Break
if defined sPath call "SomeBatch.cmd" "%sPath%"

endlocal
exit /b 0


pzh2393 20-01-2013 00:06 2070644

Спасибо всем!
хотелось чтобы если переменная "%sPath%" определена её можно было использовать в другом батнике...

pzh2393 20-01-2013 02:00 2070719

а "финт" с передачей пройдет если оба батника были скомпилированы в exe?

Iska 20-01-2013 03:35 2070759

pzh2393, проверьте. Я подобное не пользовал, и не планирую.


Время: 13:06.

Время: 13:06.
© OSzone.net 2001-