Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Операционные системы » Microsoft Windows » Задачи на bat-файлах

Модерирует : KLASS, IFkO

vu1tur (14-11-2006 16:59): http://forum.ru-board.com/topic.cgi?forum=62&topic=9040  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101

   

hacsoft

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Задачи на bat-файлах
Вопросы, задачи и их решения по работе с командными файлами, а также сопутствующие ссылки.
 
Смежные темы:
В помощь системному администратору » Автоматизация администрирования
Программы » Командная строка, батники\сценарии
 
Полезные ссылки:
· Cmd. Описание от разработчиков
· Набор GNU утилит для win32
· Встроенный справочник по командам: hh ntcmds.chm
· Пакет утилит для организации интерфейса в bat-файлах
· Использование ansi.sys
· cmdow — изменение параметров и видимости дос-окна
· blat — отправка почты из консоли
 
Готовые решения и частые вопросы:
· Создание листинга директорий на примере создания плейлиста
· Разименовывание переменных
· Переименовывание файлов по дате создания
· Запуск сетевого подключения
· Запуск bat файлов как сервис
· Пример выполнения команд по результату команды ping
· Использование даты на день раньше чем сегодня
 
Невозможности — что нельзя сделать с помощью командных файлов:
· изменть конфигурацию IP на удаленной машине (без помощи rcmd.exe) [добавил ALEF]
 
 
Дополняем шапку: добавляем готовые решения, полезные ссылки.
 
Примечание: Большие куски кода заключайте в тэг [more]  
 
Важно: копируя батник через буфер обмена из форума не забывайте удалять пробелы в конце каждой строки, т.к. в некоторых случаях из-за этого программа будет работать неправильно!!!
 
Старая версия первого сообщения

Всего записей: 116 | Зарегистр. 18-11-2005 | Отправлено: 22:58 18-11-2005 | Исправлено: Elroir, 05:50 11-11-2006
slech



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
evle
Спасибо, помогло.

Всего записей: 4893 | Зарегистр. 10-11-2004 | Отправлено: 12:54 06-02-2006 | Исправлено: slech, 13:24 06-02-2006
KapralBel



Platinum Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
MonsterMax

Код:
 
@Echo Off
Set InstDir=""
regedit /ea Temp.reg HKEY_LOCAL_MACHINE\SOFTWARE\Netscape\Netscape Navigator\Opera\Main
FOR /F "tokens=1,2* delims==" %%a in (Temp.reg) do Call :_P %%a %%b
Echo Opera in: %InstDir%
GoTo :EOF
 
:_P
If /i %1=="Install Directory" Set InstDir=%2
GoTo :EOF
 

Всего записей: 11354 | Зарегистр. 16-02-2005 | Отправлено: 14:53 06-02-2006
MonsterMax



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Огромное спасибо что отреагировал KapralBel, но не мог бы ты просветить меня комментариями что из этих операндов что делает? Просто неохота втупую копировать скрипт и думать какой я умный. Хочется разобраться что к чему.
 
И куда мне вставить этот скрипт в моем скрипте?

Код:
 
@cls
@title Opera Internet Browser only with profile backup
@set "RAR=%PROGRAMFILES%\winrar\"
@set "SOURCE="%PROGRAMFILES%\internet\Opera""
@set "DEST=e:\temp\"
@set "NAME=opera_"
@set "PACK_LVL=5"
@set "DATE=YYYY.MM.DD-HH.MM.SS"
@If not Exist %SOURCE%\Profile (
@"%RAR%rar" a "-ag%DATE%" -r -k -ad -ep1 -rr3p -m%PACK_LVL% "%DEST%%NAME%" %SOURCE%
) Else (
echo.
@echo    !!!      Нечего резервировать     !!!
echo.
pause
)
exit.


Всего записей: 38 | Зарегистр. 08-09-2004 | Отправлено: 15:14 06-02-2006 | Исправлено: MonsterMax, 15:18 06-02-2006
KapralBel



Platinum Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
MonsterMax

Код:
 
@Echo Off
Set InstDir=""
regedit /ea Temp.reg HKEY_CURRENT_USER\Software\Far
FOR /F "tokens=1,2* delims==" %%a in (Temp.reg) do Call :_P %%a %%b
GoTo :_Next
 
:_P
If /i %1=="Install Directory" Set InstDir=%2
GoTo :EOF
 
:_Next
Set SOURCE=%InstDir%
 
@cls  
@title Opera Internet Browser only with profile backup  
@set "RAR=%PROGRAMFILES%\winrar\"  
REM @set "SOURCE="%PROGRAMFILES%\internet\Opera""  
@set "DEST=e:\temp\"  
@set "NAME=opera_"  
@set "PACK_LVL=5"  
@set "DATE=YYYY.MM.DD-HH.MM.SS"  
@If not Exist %SOURCE%\Profile (  
@"%RAR%rar" a "-ag%DATE%" -r -k -ad -ep1 -rr3p -m%PACK_LVL% "%DEST%%NAME%" %SOURCE%  
) Else (  
@color 0A  
 
echo.  
@echo    !!!      Нечего резервировать     !!!  
echo.  
pause  
)  
exit.  
 
 

Всего записей: 11354 | Зарегистр. 16-02-2005 | Отправлено: 15:23 06-02-2006 | Исправлено: KapralBel, 15:25 06-02-2006
MonsterMax



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Чего то не то - начинает архивировать все что нашел в корне того каталога из которого был запущен.

Всего записей: 38 | Зарегистр. 08-09-2004 | Отправлено: 15:42 06-02-2006
KapralBel



Platinum Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
MonsterMax
Сорри, у меня Опера не установлена, поэтому ключ Install Directory я создавал в ветке ФАРа и при размещении поста забыл поправить

Код:
 
@Echo Off  
Set InstDir=""  
regedit /ea Temp.reg HKEY_LOCAL_MACHINE\SOFTWARE\Netscape\Netscape Navigator\Opera\Main
FOR /F "tokens=1,2* delims==" %%a in (Temp.reg) do Call :_P %%a %%b  
GoTo :_Next  
 
:_P  
If /i %1=="Install Directory" Set InstDir=%2  
GoTo :EOF  
 
:_Next  
Set SOURCE=%InstDir%  
 
 
@cls  
@title Opera Internet Browser only with profile backup  
@set "RAR=%PROGRAMFILES%\winrar\"  
REM @set "SOURCE="%PROGRAMFILES%\internet\Opera""  
@set "DEST=e:\temp\"
@set "NAME=opera_"  
@set "PACK_LVL=5"  
@set "DATE=YYYY.MM.DD-HH.MM.SS"  
@If not Exist %SOURCE%\Profile (  
@"%RAR%rar" a "-ag%DATE%" -r -k -ad -ep1 -rr3p -m%PACK_LVL% "%DEST%%NAME%" %SOURCE%  
) Else (  
@color 0A  
   
echo.  
@echo    !!!      Нечего резервировать     !!!  
echo.  
pause  
)  
exit.    
 

Всего записей: 11354 | Зарегистр. 16-02-2005 | Отправлено: 15:51 06-02-2006
MonsterMax



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Код:
H:\>Set InstDir=""
 
H:\>regedit /ea Temp.reg HKEY_LOCAL_MACHINE\SOFTWARE\Netscape\Netscape Navigator
\Opera\Main
 
H:\>FOR /F "tokens=1,2* delims==" %a in (Temp.reg) do Call :_P %a %b
Не удается найти файл Temp.reg.
 
H:\>GoTo :_Next
 
H:\>Set SOURCE=""
 
H:\>REM @set "SOURCE="C:\Program Files\internet\Opera""
"\Profile" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.
 
 
Creating archive e:\temp\opera_2006.02.06-16.09.58.rar
 
Adding    magic\About.dll                                             OK
Adding    magic\blacklst.txt                                          OK
 

 
это  кусок начавшего выполняться скрипта. А adding - это то что у меня на флешке - откуда скрипт собственно и был запущен.

Всего записей: 38 | Зарегистр. 08-09-2004 | Отправлено: 16:11 06-02-2006 | Исправлено: MonsterMax, 16:17 06-02-2006
KapralBel



Platinum Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
MonsterMax
Укажи тогда везде C:\Temp.reg

Всего записей: 11354 | Зарегистр. 16-02-2005 | Отправлено: 16:15 06-02-2006
MonsterMax



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
указывал через %TEMP%\Temp.reg
все равно не идет
 

Код:
 
H:\>Set InstDir=""
 
H:\>regedit /ea c:\Temp\Temp.reg HKEY_LOCAL_MACHINE\SOFTWARE\Netscape\Netscape N
avigator\Opera\Main
 
H:\>FOR /F "tokens=1,2* delims==" %a in (c:\Temp\Temp.reg) do Call :_P %a %b
Не удается найти файл c:\Temp\Temp.reg.
 
H:\>GoTo :_Next
 
H:\>Set SOURCE=""
 
H:\>REM @set "SOURCE=C:\Program Files\internet\Opera"
"\Profile" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.

 
 
ЗЫ! при простом выполнении команды regedit /ea c:\temp\Temp.reg HKEY_LOCAL_MACHINE\SOFTWARE\Netscape\Netscape Navigator\Opera\Main
 
никакого файла не образовалось в c:\temp

Всего записей: 38 | Зарегистр. 08-09-2004 | Отправлено: 16:15 06-02-2006 | Исправлено: MonsterMax, 16:22 06-02-2006
KapralBel



Platinum Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
MonsterMax
Выполни только такой батничек

Код:
 
regedit /ea c:\Temp\Temp.reg HKEY_LOCAL_MACHINE\SOFTWARE\Netscape\Netscape N  
avigator\Opera\Main
Dir C:\Temp\*.reg
 

Какие .Reg файлы в Темпе?
 
Какая у тебя ОС?
 
Добавлено:

Цитата:
ЗЫ! при простом выполнении команды regedit /ea c:\temp\Temp.reg HKEY_LOCAL_MACHINE\SOFTWARE\Netscape\Netscape Navigator\Opera\Main  
 
никакого файла не образовалось в c:\temp

Такое случается если нет соответствующей ветки в реестре - проверь

Всего записей: 11354 | Зарегистр. 16-02-2005 | Отправлено: 16:23 06-02-2006
MonsterMax



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Код:
 
H:\>regedit /ea c:\Temp\Temp.reg HKEY_LOCAL_MACHINE\SOFTWARE\Netscape\Netscape N
avigator\Opera\Main
 
H:\>Dir C:\Temp\*.reg
 Том в устройстве C не имеет метки.
 Серийный номер тома: B867-32FC
 
 Содержимое папки C:\Temp
 
Файл не найден

 
os = winxpsp2
 
Добавлено:
вот тока что экспотрнул вручную
 

Код:
Windows Registry Editor Version 5.00
 
[HKEY_LOCAL_MACHINE\SOFTWARE\Netscape\Netscape Navigator\Opera\Main]
"Install Directory"="C:\\Program Files\\internet\\Opera"
"Plugins Directory"="C:\\Program Files\\internet\\Opera\\Program\\Plugins"
 
 

Всего записей: 38 | Зарегистр. 08-09-2004 | Отправлено: 16:27 06-02-2006
KapralBel



Platinum Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
MonsterMax
У меня при тойже ОС - все ОК

Всего записей: 11354 | Зарегистр. 16-02-2005 | Отправлено: 16:37 06-02-2006
MonsterMax



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Бл9I - в кавычки надо было тк Netscape пробел Navigator
 
Добавлено:
Теперь не выполняется @If not Exist %SOURCE%\Profile (  
 
не пойму почему

Всего записей: 38 | Зарегистр. 08-09-2004 | Отправлено: 16:49 06-02-2006
KapralBel



Platinum Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
MonsterMax
Проверь такую возможность, при копировании листингов с форума, после каждой строки вставляется пробел и в данном случае - будет неверное определение значения переменной

Всего записей: 11354 | Зарегистр. 16-02-2005 | Отправлено: 17:09 06-02-2006
MonsterMax



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Я нашел способ хитрее - это наверное баг форума но мне дается доступ к редактированию даже твоих новостей - по крайней мере я попадаю в исходный код твоей новости с помощью кнопки "редактировать" и оттуда код копирую без лишних пробелов

Всего записей: 38 | Зарегистр. 08-09-2004 | Отправлено: 17:21 06-02-2006
Abrosov



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
KapralBel
функция findstr не возвращает ошибки когда ничего не находит
она возвращает пустую строку
тут либо использовать другую функцию поиска
либо вообще другой подход

Всего записей: 122 | Зарегистр. 06-11-2004 | Отправлено: 18:15 06-02-2006
KapralBel



Platinum Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Abrosov
Какая у тебя ОС?
 
Добавлено:
Есть файл Whatsnew.txt, в котором содержится строка FAR Manager

Код:
 
@Echo Off
FindStr "FAR" WhatsNew.txt >Nul
Echo %Errorlevel%
FindStr "FA1R" WhatsNew.txt  >Nul
Echo %Errorlevel%
 

Возвращает в 1-м случае 0
Во втором 1

Всего записей: 11354 | Зарегистр. 16-02-2005 | Отправлено: 18:22 06-02-2006
Abrosov



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
KapralBel
спасибо, работает

Всего записей: 122 | Зарегистр. 06-11-2004 | Отправлено: 13:37 07-02-2006
dartvaider



BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Подскажите плиз умные люди можно ли как либо батником менять айпи адрес, днс, маску?
Очень нужно!

Всего записей: 534 | Зарегистр. 31-08-2005 | Отправлено: 17:26 07-02-2006
VelDmi

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
В чем разница между запуском:
 
Call date.cmd
date.cmd
start /wait date.cmd

Всего записей: 534 | Зарегистр. 03-12-2002 | Отправлено: 19:04 07-02-2006
   

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101

Компьютерный форум Ru.Board » Операционные системы » Microsoft Windows » Задачи на bat-файлах
vu1tur (14-11-2006 16:59): http://forum.ru-board.com/topic.cgi?forum=62&topic=9040


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru