Помогите, плиз, с батником
» Задачи на bat-файлах 6
Доброго дня!
Существует вот такая задача...
необходимо найти файл который может быть расположен на любом диске компа, имя файла известно, далее путь поместить в переменную и произвести манипуляции с этим файлом.
Каким образом осуществить поиск?
заранее спасибо!
Существует вот такая задача...
необходимо найти файл который может быть расположен на любом диске компа, имя файла известно, далее путь поместить в переменную и произвести манипуляции с этим файлом.
Каким образом осуществить поиск?
заранее спасибо!
Gizmentiy
Как-нибудь так:
Код:
@echo off
setlocal
for %%i in (c d e f g h i j k l m n o p q r s t u v w x y z) do (
for /f "tokens=*" %%a in ('dir /b /s /a-d %%i:\FileName.ext 2^>nul') do (
set "foundFile=%%a" & goto found
))
echo File not found
goto :EOF
:found
echo File found - %foundFile%
Как-нибудь так:
Код:
@echo off
setlocal
for %%i in (c d e f g h i j k l m n o p q r s t u v w x y z) do (
for /f "tokens=*" %%a in ('dir /b /s /a-d %%i:\FileName.ext 2^>nul') do (
set "foundFile=%%a" & goto found
))
echo File not found
goto :EOF
:found
echo File found - %foundFile%
Elroir
Спасибо большое работает!
Спасибо большое работает!
Ребятки, я уже конечно спрашивал, но все таки есть ли у кого утилита для выполнения SQL запроса из командной строки? Даже серии запросов, для dbf файла.
FaUsT333
cdbflite
cdbflite
Ребята, подскажите.... Почему этот код не работает
Код:
set path_xp = c:\temp\
for /f "usebackq" %%a IN (`dir %path_xp% /b`) do (@echo %%a >>list.txt)
Код:
set path_xp = c:\temp\
for /f "usebackq" %%a IN (`dir %path_xp% /b`) do (@echo %%a >>list.txt)
DESperado
Цитата:
Не настолько строгие. У меня одинаково работают оба примера.
Может быть у тебя на пустой строчке стоит какой-нибудь символ невидимый...
Цитата:
Неужели такие строгие правила синтаксиса?
Не настолько строгие. У меня одинаково работают оба примера.
Может быть у тебя на пустой строчке стоит какой-нибудь символ невидимый...
DESperado
данный код прекрасно покажет присвоение переменной
пробел после path_xp в первой строке приведёт к неверному присвоению имени переменной, то есть переменная будет выглядеть как %path_xp %
отсюда следует, что имя переменной присваивается командой set между пробелом после команды и первым знаком =, что хорошо видно на примере
Код:
@set path_xp = c:\temp\
if defined path_xp (echo the path_xp="%path_xp%") else echo var path_xp not defined, the path_xp="%path_xp %"
данный код прекрасно покажет присвоение переменной
пробел после path_xp в первой строке приведёт к неверному присвоению имени переменной, то есть переменная будет выглядеть как %path_xp %
отсюда следует, что имя переменной присваивается командой set между пробелом после команды и первым знаком =, что хорошо видно на примере
Код:
@set path_xp = c:\temp\
if defined path_xp (echo the path_xp="%path_xp%") else echo var path_xp not defined, the path_xp="%path_xp %"
Здраствуйте. Сразу хочу попросить пощение если этот вопрос уже рассматривался раньше.
Как вывести дату на екран без точек, например если написать:
echo %date% - результат будет 27.01.2009, как сделать что бы вывело 27012009? Или как записать это число в переменную?
Зарание благодарен.
Как вывести дату на екран без точек, например если написать:
echo %date% - результат будет 27.01.2009, как сделать что бы вывело 27012009? Или как записать это число в переменную?
Зарание благодарен.
sL4yer
Код: echo %date:.=%
Код: echo %date:.=%
Есть файл 1.txt нужно в этом файле найти строку которая начинается со слова "loop" и вырезать из неё например несколько последних символов.
Зарание благодарен.
Зарание благодарен.
Задавал следующий вопрос:
Код: Есть два текстовых файла. Один полностью юникодный (содержаться строки на разных языках). Задача: удалить из юникодного файла строки, в которых содержатся определённые слова. Список слов - во втором файле. Возможно есть какая-нибудь утилита, которая поможет решить эту задачу из комстроки?
Код: Есть два текстовых файла. Один полностью юникодный (содержаться строки на разных языках). Задача: удалить из юникодного файла строки, в которых содержатся определённые слова. Список слов - во втором файле. Возможно есть какая-нибудь утилита, которая поможет решить эту задачу из комстроки?
Помогите, нужно из файла вывести разную строку при каждом запуске
korosya
Попробуй. Есть два файла 1-utf.txt (файл с текстом) и list-utf.txt (файл со словами)
Код:
@echo off
findstr /v /g:list-utf.txt 1-utf.txt 1>1.tmp
move /y 1.tmp 1-utf.txt
Попробуй. Есть два файла 1-utf.txt (файл с текстом) и list-utf.txt (файл со словами)
Код:
@echo off
findstr /v /g:list-utf.txt 1-utf.txt 1>1.tmp
move /y 1.tmp 1-utf.txt
01MDM
Не получается. Файл 1.tmp в точности совпадает с 1-utf.txt. В качестве 1-utf.txt я использую INTL.INF из папки I386 дистрибутива WinXP. Файл list-utf.txt (ANSI) [more]85F874.FON
85F1255.FON
85F1256.FON
85F1257.FON
85S874.FON
85S1255.FON
85S1256.FON
85S1257.FON
8514FIXE.FON
8514FIXG.FON
8514FIXT.FON
8514OEME.FON
8514OEMG.FON
8514OEMT.FON
8514SYSE.FON
8514SYSG.FON
8514SYST.FON
85775.FON
AGT040D.DLL
AGT040D.HLP
AGT040E.DLL
AGT040E.HLP
AGT041F.DLL
AGT041F.HLP
AGT0401.DLL
AGT0401.HLP
AGT0404.DLL
AGT0404.HLP
AGT0405.DLL
AGT0405.HLP
AGT0408.DLL
AGT0408.HLP
AGT0411.DLL
AGT0411.HLP
AGT0412.DLL
AGT0412.HLP
AGT0415.DLL
AGT0415.HLP
AGT0804.DLL
AGT0804.HLP
AHRONBD.TTF
ANDLSO.TTF
ANGSA.TTF
ANGSAB.TTF
ANGSAI.TTF
ANGSAU.TTF
ANGSAUB.TTF
ANGSAUI.TTF
ANGSAUZ.TTF
ANGSAZ.TTF
APP775.FON
APP852.FON
APP857.FON
ARTRBDO.TTF
ARTRO.TTF
BROWA.TTF
BROWAB.TTF
BROWAI.TTF
BROWAU.TTF
BROWAUB.TTF
BROWAUI.TTF
BROWAUZ.TTF
BROWAZ.TTF
C_G18030.DLL
C_IS2022.DLL
C_ISCII.DLL
CGA40737.FON
CGA40852.FON
CGA40857.FON
CGA40869.FON
CGA80737.FON
CGA80852.FON
CGA80857.FON
CGA80869.FON
CORDIA.TTF
CORDIAB.TTF
CORDIAI.TTF
CORDIAU.TTF
CORDIAUB.TTF
CORDIAUI.TTF
CORDIAUZ.TTF
CORDIAZ.TTF
COUE1255.FON
COUE1256.FON
COUE1257.FON
COUF1255.FON
COUF1256.FON
COUF1257.FON
COUREE.FON
COUREG.FON
COURET.FON
COURFE.FON
COURFG.FON
COURFT.FON
DAVID.TTF
DAVIDBD.TTF
DAVIDTR.TTF
DOS737.FON
EGA40737.FON
EGA40852.FON
EGA40857.FON
EGA40869.FON
EGA80737.FON
EGA80852.FON
EGA80857.FON
EGA80869.FON
ESTRE.TTF
F3AHVOAS.DLL
FRANK.TTF
FTLX041E.DLL
GAUTAMI.TTF
KARTIKA.TTF
KBD101.DLL
KBD101A.DLL
KBD106N.DLL
KBDAX2.DLL
KBDIBM02.DLL
KBDLK41A.DLL
KBDLK41J.DLL
KBDNEC.DLL
KBDNEC95.DLL
KBDNECAT.DLL
KBDNECNT.DLL
LATHA.TTF
LVNM.TTF
LVNMBD.TTF
MANGAL.TTF
MRIAM.TTF
MRIAMC.TTF
MRIAMFX.TTF
MRIAMTR.TTF
MSDLG874.FON
NRKIS.TTF
RAAVI.TTF
ROD.TTF
RODTR.TTF
SERE1255.FON
SERE1256.FON
SERE1257.FON
SERF1255.FON
SERF1256.FON
SERF1257.FON
SERIFEE.FON
SERIFEG.FON
SERIFET.FON
SERIFFE.FON
SERIFFG.FON
SERIFFT.FON
SHRUTI.TTF
SIMPBDO.TTF
SIMPFXO.TTF
SIMPO.TTF
SMAE1255.FON
SMAE1256.FON
SMAE1257.FON
SMAF1255.FON
SMAF1256.FON
SMAF1257.FON
SMALLEE.FON
SMALLEG.FON
SMALLET.FON
SMALLFE.FON
SMALLFG.FON
SMALLFT.FON
SSEE874.FON
SSEE1255.FON
SSEE1256.FON
SSEE1257.FON
SSEF874.FON
SSEF1255.FON
SSEF1256.FON
SSEF1257.FON
SSERIFEE.FON
SSERIFEG.FON
SSERIFET.FON
SSERIFFE.FON
SSERIFFG.FON
SSERIFFT.FON
SYLFAEN.TTF
TRADBDO.TTF
TRADO.TTF
TUNGA.TTF
UPCDB.TTF
UPCDBI.TTF
UPCDI.TTF
UPCDL.TTF
UPCEB.TTF
UPCEBI.TTF
UPCEI.TTF
UPCEL.TTF
UPCFB.TTF
UPCFBI.TTF
UPCFI.TTF
UPCFL.TTF
UPCIB.TTF
UPCIBI.TTF
UPCII.TTF
UPCIL.TTF
UPCJB.TTF
UPCJBI.TTF
UPCJI.TTF
UPCJL.TTF
UPCKB.TTF
UPCKBI.TTF
UPCKI.TTF
UPCKL.TTF
UPCLB.TTF
UPCLBI.TTF
UPCLI.TTF
UPCLL.TTF
VGA737.FON
VGA775.FON
VGA852.FON
VGA857.FON
VGA869.FON
VGAF874.FON
VGAF1255.FON
VGAF1256.FON
VGAF1257.FON
VGAFIXE.FON
VGAFIXG.FON
VGAFIXT.FON
VGAS874.FON
VGAS1255.FON
VGAS1256.FON
VGAS1257.FON
VGASYSE.FON
VGASYSG.FON
VGASYST.FON
VRINDA.TTF
[/more]
Не получается. Файл 1.tmp в точности совпадает с 1-utf.txt. В качестве 1-utf.txt я использую INTL.INF из папки I386 дистрибутива WinXP. Файл list-utf.txt (ANSI) [more]85F874.FON
85F1255.FON
85F1256.FON
85F1257.FON
85S874.FON
85S1255.FON
85S1256.FON
85S1257.FON
8514FIXE.FON
8514FIXG.FON
8514FIXT.FON
8514OEME.FON
8514OEMG.FON
8514OEMT.FON
8514SYSE.FON
8514SYSG.FON
8514SYST.FON
85775.FON
AGT040D.DLL
AGT040D.HLP
AGT040E.DLL
AGT040E.HLP
AGT041F.DLL
AGT041F.HLP
AGT0401.DLL
AGT0401.HLP
AGT0404.DLL
AGT0404.HLP
AGT0405.DLL
AGT0405.HLP
AGT0408.DLL
AGT0408.HLP
AGT0411.DLL
AGT0411.HLP
AGT0412.DLL
AGT0412.HLP
AGT0415.DLL
AGT0415.HLP
AGT0804.DLL
AGT0804.HLP
AHRONBD.TTF
ANDLSO.TTF
ANGSA.TTF
ANGSAB.TTF
ANGSAI.TTF
ANGSAU.TTF
ANGSAUB.TTF
ANGSAUI.TTF
ANGSAUZ.TTF
ANGSAZ.TTF
APP775.FON
APP852.FON
APP857.FON
ARTRBDO.TTF
ARTRO.TTF
BROWA.TTF
BROWAB.TTF
BROWAI.TTF
BROWAU.TTF
BROWAUB.TTF
BROWAUI.TTF
BROWAUZ.TTF
BROWAZ.TTF
C_G18030.DLL
C_IS2022.DLL
C_ISCII.DLL
CGA40737.FON
CGA40852.FON
CGA40857.FON
CGA40869.FON
CGA80737.FON
CGA80852.FON
CGA80857.FON
CGA80869.FON
CORDIA.TTF
CORDIAB.TTF
CORDIAI.TTF
CORDIAU.TTF
CORDIAUB.TTF
CORDIAUI.TTF
CORDIAUZ.TTF
CORDIAZ.TTF
COUE1255.FON
COUE1256.FON
COUE1257.FON
COUF1255.FON
COUF1256.FON
COUF1257.FON
COUREE.FON
COUREG.FON
COURET.FON
COURFE.FON
COURFG.FON
COURFT.FON
DAVID.TTF
DAVIDBD.TTF
DAVIDTR.TTF
DOS737.FON
EGA40737.FON
EGA40852.FON
EGA40857.FON
EGA40869.FON
EGA80737.FON
EGA80852.FON
EGA80857.FON
EGA80869.FON
ESTRE.TTF
F3AHVOAS.DLL
FRANK.TTF
FTLX041E.DLL
GAUTAMI.TTF
KARTIKA.TTF
KBD101.DLL
KBD101A.DLL
KBD106N.DLL
KBDAX2.DLL
KBDIBM02.DLL
KBDLK41A.DLL
KBDLK41J.DLL
KBDNEC.DLL
KBDNEC95.DLL
KBDNECAT.DLL
KBDNECNT.DLL
LATHA.TTF
LVNM.TTF
LVNMBD.TTF
MANGAL.TTF
MRIAM.TTF
MRIAMC.TTF
MRIAMFX.TTF
MRIAMTR.TTF
MSDLG874.FON
NRKIS.TTF
RAAVI.TTF
ROD.TTF
RODTR.TTF
SERE1255.FON
SERE1256.FON
SERE1257.FON
SERF1255.FON
SERF1256.FON
SERF1257.FON
SERIFEE.FON
SERIFEG.FON
SERIFET.FON
SERIFFE.FON
SERIFFG.FON
SERIFFT.FON
SHRUTI.TTF
SIMPBDO.TTF
SIMPFXO.TTF
SIMPO.TTF
SMAE1255.FON
SMAE1256.FON
SMAE1257.FON
SMAF1255.FON
SMAF1256.FON
SMAF1257.FON
SMALLEE.FON
SMALLEG.FON
SMALLET.FON
SMALLFE.FON
SMALLFG.FON
SMALLFT.FON
SSEE874.FON
SSEE1255.FON
SSEE1256.FON
SSEE1257.FON
SSEF874.FON
SSEF1255.FON
SSEF1256.FON
SSEF1257.FON
SSERIFEE.FON
SSERIFEG.FON
SSERIFET.FON
SSERIFFE.FON
SSERIFFG.FON
SSERIFFT.FON
SYLFAEN.TTF
TRADBDO.TTF
TRADO.TTF
TUNGA.TTF
UPCDB.TTF
UPCDBI.TTF
UPCDI.TTF
UPCDL.TTF
UPCEB.TTF
UPCEBI.TTF
UPCEI.TTF
UPCEL.TTF
UPCFB.TTF
UPCFBI.TTF
UPCFI.TTF
UPCFL.TTF
UPCIB.TTF
UPCIBI.TTF
UPCII.TTF
UPCIL.TTF
UPCJB.TTF
UPCJBI.TTF
UPCJI.TTF
UPCJL.TTF
UPCKB.TTF
UPCKBI.TTF
UPCKI.TTF
UPCKL.TTF
UPCLB.TTF
UPCLBI.TTF
UPCLI.TTF
UPCLL.TTF
VGA737.FON
VGA775.FON
VGA852.FON
VGA857.FON
VGA869.FON
VGAF874.FON
VGAF1255.FON
VGAF1256.FON
VGAF1257.FON
VGAFIXE.FON
VGAFIXG.FON
VGAFIXT.FON
VGAS874.FON
VGAS1255.FON
VGAS1256.FON
VGAS1257.FON
VGASYSE.FON
VGASYSG.FON
VGASYST.FON
VRINDA.TTF
[/more]
sL4yer
Цитата:
Код:
@echo off
setlocal
for /f "tokens=*" %%a in ('type 1.txt ^| findstr /r /c:"^loop"') do set "line=%%a" & goto next
:next
if defined line echo %line:~-5%
Цитата:
Есть файл 1.txt нужно в этом файле найти строку которая начинается со слова "loop" и вырезать из неё например несколько последних символов.
Код:
@echo off
setlocal
for /f "tokens=*" %%a in ('type 1.txt ^| findstr /r /c:"^loop"') do set "line=%%a" & goto next
:next
if defined line echo %line:~-5%
korosya
Цитата:
Он в кодировке utf-16, а с ней, наверное, юникодная cmd (cmd /u) не справляется
Проверь такой вариант, если все пройдет нормально раскомментируй две последние строки:
Код:
@echo off
iconv -f utf-16 -t utf-8 intl.inf 1>~intl.inf
findstr /v /g:list.txt ~intl.inf 1>intl.tmp
::move /y intl.tmp intl.inf
::del ~intl.inf
Цитата:
Не получается. Файл 1.tmp в точности совпадает с 1-utf.txt. В качестве 1-utf.txt я использую INTL.INF из папки I386 дистрибутива WinXP
Он в кодировке utf-16, а с ней, наверное, юникодная cmd (cmd /u) не справляется
Проверь такой вариант, если все пройдет нормально раскомментируй две последние строки:
Код:
@echo off
iconv -f utf-16 -t utf-8 intl.inf 1>~intl.inf
findstr /v /g:list.txt ~intl.inf 1>intl.tmp
::move /y intl.tmp intl.inf
::del ~intl.inf
Elroir, спасибо!
Подскажите, как сделать, чтобы названия всех файлов с расширением .rar из каталога archs
записывались построчно (без расширения, только имя) в list.txt
Подскажите, как сделать, чтобы названия всех файлов с расширением .rar из каталога archs
записывались построчно (без расширения, только имя) в list.txt
batniki
Код:
@echo off
for %%a in (archs\*.rar) do echo %%~na>>list.txt
Код:
@echo off
for %%a in (archs\*.rar) do echo %%~na>>list.txt
Столкнулись с проблемой определения ERRORLEVEL.
Bat-файл написан для запуска программы, которая должна выполнить указанную команду (программа лежит не рядом с bat-файлом). Код приведен ниже.
В строке вызова команды написана специально неправильная команда, чтобы получить ошибку в ERRORLEVEL. В итоге получается, что ERRORLEVEL всегда 0, т.е. ошибок нет, тогда как уже ошибка - неправильная команда.
Программа, к которой обращаюсь с командой, возвращает результат ERRORLEVEL=1, если указать неправильную команду в папке, где она распололжена.
Может все дело в смене путей: cd..\.. ?
Помогите, пожалуйста. Пока ещё новичок в батниках.
Цитата:
Bat-файл написан для запуска программы, которая должна выполнить указанную команду (программа лежит не рядом с bat-файлом). Код приведен ниже.
В строке вызова команды написана специально неправильная команда, чтобы получить ошибку в ERRORLEVEL. В итоге получается, что ERRORLEVEL всегда 0, т.е. ошибок нет, тогда как уже ошибка - неправильная команда.
Программа, к которой обращаюсь с командой, возвращает результат ERRORLEVEL=1, если указать неправильную команду в папке, где она распололжена.
Может все дело в смене путей: cd..\.. ?
Помогите, пожалуйста. Пока ещё новичок в батниках.
Цитата:
set dbOrig=db1.gdb
set dbCopy=_db1.gdb
rem Копируем БД, дальше действия будем делать с копией
copy /Y %dbOrig% %dbCopy%
rem Проверим, что есть загрузочный файл dbPatcher.exe
cd ..\..\Exe
if not exist dbPatcher.exe (
set ERRORLEVEL=1
) else (
rem Команда вызова паузы
call dbPatcher.exe wrnComm
echo Команда вернула результат = %ERRORLEVEL%
)
...
NPhoenix
Код:
setlocal enabledelayedexpansion
set dbOrig=db1.gdb
set dbCopy=_db1.gdb
rem Копируем БД, дальше действия будем делать с копией
copy /Y %dbOrig% %dbCopy%
rem Проверим, что есть загрузочный файл dbPatcher.exe
cd ..\..\Exe
if not exist dbPatcher.exe (
rem Используйте переменную, с другим названием (не errorlevel)
set MY_ERRORLEVEL=1
) else (
rem Команда вызова паузы
call dbPatcher.exe wrnComm
echo Команда вернула результат = !ERRORLEVEL!
)
...
Код:
setlocal enabledelayedexpansion
set dbOrig=db1.gdb
set dbCopy=_db1.gdb
rem Копируем БД, дальше действия будем делать с копией
copy /Y %dbOrig% %dbCopy%
rem Проверим, что есть загрузочный файл dbPatcher.exe
cd ..\..\Exe
if not exist dbPatcher.exe (
rem Используйте переменную, с другим названием (не errorlevel)
set MY_ERRORLEVEL=1
) else (
rem Команда вызова паузы
call dbPatcher.exe wrnComm
echo Команда вернула результат = !ERRORLEVEL!
)
...
привет,
можно ли создать и если можно то как такой батник:
запуск программы, которая запрашивает логин и пароль, тоесть автоматически что бы логинилось.
можно ли создать и если можно то как такой батник:
запуск программы, которая запрашивает логин и пароль, тоесть автоматически что бы логинилось.
Спасибо огромное. Прояснилося...
Добавлено:
chel78
А к какой именно программе ты хочешь прилогиниться?
Добавлено:
chel78
А к какой именно программе ты хочешь прилогиниться?
Помогите плизз напсиать батник. Суть следующая есть программа gif_opener которая просматривает и редактирует внутреннюю структуру gif файла, есть сам gif файл, нужно следующее:
запустит gif_opener в нем открыть gif файл, перейти на 13 байт поменять все до 60 сохранить и выйти. тк с программой врядил кто то знаком, то может просто подскажете как перемещать курсор по координатам...
запустит gif_opener в нем открыть gif файл, перейти на 13 байт поменять все до 60 сохранить и выйти. тк с программой врядил кто то знаком, то может просто подскажете как перемещать курсор по координатам...
Цитата:
А к какой именно программе ты хочешь прилогиниться?
SAP
kravchuk666
Тебе скорее подойдет AutoIt скрипт - http://forum.ru-board.com/topic.cgi?forum=5&topic=29240
chel78
Может и тебе пригодится.
Тебе скорее подойдет AutoIt скрипт - http://forum.ru-board.com/topic.cgi?forum=5&topic=29240
chel78
Может и тебе пригодится.
спасибо попробую
chel78
Вообще можно, если у неё прописаны для этого параметры командной строки.
Для примера в Download Master прописаны команды, с помощью которых можно управлять закачками, создав для этого какой-нибудь батник.
Вообще можно, если у неё прописаны для этого параметры командной строки.
Для примера в Download Master прописаны команды, с помощью которых можно управлять закачками, создав для этого какой-нибудь батник.
А возможно все такие сделать автоматический переход по строчкам, если к примеру загружен текстовый документ?
Добавлено:
А вот ещё, кто нить знает как работать с Norton Utilities 4.5 при помощи батников.
Добавлено:
А вот ещё, кто нить знает как работать с Norton Utilities 4.5 при помощи батников.
Страницы: 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
Предыдущая тема: как сохранить сетевые настройки
Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.