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

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

Модерирует : gyra, Maz

Widok (19-11-2007 12:08): лимит страниц. продолжаем здесь  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 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 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118

   

KLASS



Moderator
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Командная строка, батники\сценарии (bat, cmd)
Вопросы, задачи и их решения по работе с командной строкой, файлами, а также сопутствующие ссылки.

 
Важно: копируя батник через буфер обмена из форума не забывайте удалять пробелы в конце каждой строки, т.к. в некоторых случаях из-за этого программа будет работать неправильно!!!
 
Примечание: Большие куски кода заключайте в тэг [more]  
 
Смежные темы:
В помощь системному администратору » Автоматизация администрирования
Microsoft Windows » Задачи на bat-файлах 4
 
Полезные ссылки:
· Cmd. Описание от разработчиков
· Урок bat-аники (для начинающих)
· Набор GNU утилит для win32
· Пакет утилит для организации интерфейса в bat-файлах
· Использование ansi.sys
· cmdow — изменение параметров и видимости дос-окна
· blat — отправка почты из консоли
· Справка по командам в виде Html
· Команды RunDll32
· Quick Batch File Compiler - Позволяет превратить ваш батник в независимое приложение
· Пример - получение и обработка списка пользователей
 
 
Старая версия первого сообщения

Всего записей: 9734 | Зарегистр. 12-10-2001 | Отправлено: 04:28 24-09-2002 | Исправлено: Elroir, 19:35 11-09-2007
Grafus



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Всем огромнейшее пасибо!!! Напомнили, это именно та команда!!!
KapralBel
Взял из Win2003, сидит как родной.
Результат примерно такой:

Код:
 
choice /C:123  /m "Введите 1, 2 или 3"
if errorlevel 3 goto rebsrv
if errorlevel 2 goto pay
goto print
 

Maza Faka
Интересная мысль (у меня тоже такая была), но при нажатии на какую либо другую клавишу, отрабатывает первая из функций (в данном примере Y)
 
 
Теперь другой вопрос на засыпку:

Код:
 
@echo off
sc \\nekijserver start sluzhba
if not errorlevel * goto yes
echo No Started
goto end
:yes
echo Started
goto end
:end
 

Какое значение должно стоять вместо * (звездочки), для корректного отображения текста???

Всего записей: 358 | Зарегистр. 15-12-2004 | Отправлено: 10:13 10-08-2007
KapralBel



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

Код:
 sc \\nekijserver start sluzhba  
Echo %ErrorLevel%
 

И смотришь какой код возвращается в каждом случае
 
Но кажется всегда 0

Всего записей: 11354 | Зарегистр. 16-02-2005 | Отправлено: 10:25 10-08-2007
igor_andreev

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

Цитата:
Но кажется всегда 0

Угу. Можно errorlevel команды FIND проверять.
http://www.axforum.info/forums/showthread.php?t=17256
http://forums.microsoft.com/technet-ru/rss.aspx?postid=1857386&forumid=1234&siteid=40

Всего записей: 1667 | Зарегистр. 08-12-2004 | Отправлено: 12:11 10-08-2007
KapralBel



Platinum Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Grafus
SC Query Service | find /i ": 4  RUN"  
Найдена - работает
не найдена - не работатет

Всего записей: 11354 | Зарегистр. 16-02-2005 | Отправлено: 12:21 10-08-2007
Maza Faka



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

Цитата:
при нажатии на какую либо другую клавишу, отрабатывает первая из функций

Да, ты прав, я поторопился, вот исправленный код:

Код:
 
@echo off
 
:choice
set /p choose=Enter your choice [Y]es; [N]o; C[ancel]
if "%choose%"=="" goto choice
 
for %%a in (y, n, c) do if /i %choose% equ %%a goto %%a
echo Error, try again
goto :choice
 
:y
echo You choosed: Y
goto :eof
 
:n
echo You choosed: N
goto :eof
 
:c
echo You choosed: C
 

Всего записей: 1420 | Зарегистр. 25-10-2006 | Отправлено: 13:07 10-08-2007
Grafus



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
А есть ли возможность обойти этот "0"???

Всего записей: 358 | Зарегистр. 15-12-2004 | Отправлено: 14:51 10-08-2007
KapralBel



Platinum Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Grafus
Ты про службы или про меню?
 
Если про службы
то пример в моем предыдущем посте

Всего записей: 11354 | Зарегистр. 16-02-2005 | Отправлено: 14:54 10-08-2007
Grafus



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Всем ПСБ, всё работает на ура.

Всего записей: 358 | Зарегистр. 15-12-2004 | Отправлено: 15:33 13-08-2007
losttda

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Вопрос скорее всего глупый но поиском не нашел - есть локальная папка вида "c:\Doc\" и есть расшаренная по сети папка на другом компе "\\server\share$\doc\" как при помощи бат файла(запускаемого с первого компа) скопировать в нее содержимое первой папки?

Всего записей: 18 | Зарегистр. 30-05-2007 | Отправлено: 20:15 13-08-2007
KapralBel



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

Код:
XCopy C:\Doc\*.* \\server\share$\doc\ /s

Всего записей: 11354 | Зарегистр. 16-02-2005 | Отправлено: 23:31 13-08-2007
user472

Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Здравствуйте. Интересует как использовать вывод программы в качестве подстановки?
Например как проверить hostname с использованием одноименной программы.
если `hostname` == "myHost" то ...
Спасибо.

Всего записей: 44 | Зарегистр. 20-08-2005 | Отправлено: 13:44 14-08-2007 | Исправлено: user472, 13:44 14-08-2007
KapralBel



Platinum Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
user472
В данном конкретном случае
IF %Computername%==myHost

Всего записей: 11354 | Зарегистр. 16-02-2005 | Отправлено: 13:59 14-08-2007
user472

Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Это ясно %computername% - переменная. А как использовать вывод команды?

Всего записей: 44 | Зарегистр. 20-08-2005 | Отправлено: 14:17 14-08-2007
01MDM



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

Код:
 
help for
...
FOR /F ["options"] %variable IN ('command') DO command [command-parameters]
...
 

Всего записей: 2638 | Зарегистр. 13-02-2006 | Отправлено: 14:46 14-08-2007
vserd

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
user472
hostName >test.txt
for /F .........
что вместо ...... писать смотри справку help for и топик

Всего записей: 2062 | Зарегистр. 08-05-2002 | Отправлено: 14:58 14-08-2007
keyyer

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Всем здрасте? Извиняюсь за незнание /может быть/ элементарного... Как в батнике прописать эмуляцию нажатия "горячих клавиш"? Если есть ссылки на тему - бросьте на keyyer@e1.ru. Заранее спасибо...

Всего записей: 2 | Зарегистр. 15-08-2007 | Отправлено: 14:25 18-08-2007
Elroir



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
keyyer
Посмотри утилиту nircmd (командa sendkey).

----------
"В интернете есть все, но не всегда"

Всего записей: 2631 | Зарегистр. 05-02-2003 | Отправлено: 15:11 18-08-2007
CrackMe

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Приветсвую Вас. С толкнулся со следующей задачей, как экспортировать несколько ключей реестра в 1 рег-файл?
пробовал так: REG EXPORT HKLM\Software\Classes\.drc HKLM\Software\Classes\Dirac Video file\DefaultIcon HKLM\Software\Classes\Dirac Video file\shell\open\command "c:\Registry.Backup\dirac.reg"
pause

- Только ругается

Всего записей: 710 | Зарегистр. 18-07-2006 | Отправлено: 11:28 19-08-2007
Elroir



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
CrackMe
Так не получится. Экспортировать можно только один ключ за раз.

Код:
 
@echo off
REG EXPORT HKLM\Software\Classes\.drc "c:\Registry.Backup\dirac.reg"
REG EXPORT "HKLM\Software\Classes\Dirac Video file\DefaultIcon" reg1.tmp
REG EXPORT "HKLM\Software\Classes\Dirac Video file\shell\open\command" reg2.tmp
type reg1.tmp | find "Windows Registry Editor" /v>>"c:\Registry.Backup\dirac.reg"
type reg2.tmp | find "Windows Registry Editor" /v>>"c:\Registry.Backup\dirac.reg"
del /q reg1.tmp
del /q reg2.tmp
 

 


----------
"В интернете есть все, но не всегда"

Всего записей: 2631 | Зарегистр. 05-02-2003 | Отправлено: 12:07 19-08-2007
CrackMe

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Elroir
если я правильно понимаю, ты мне дал код для объедитниия 3 рег-файлов в один. Если да, то результат явно не тот:
Добавлено:
http://uploaded.to/?id=hvy21y

Всего записей: 710 | Зарегистр. 18-07-2006 | Отправлено: 13:17 19-08-2007 | Исправлено: CrackMe, 13:18 19-08-2007
   

Страницы: 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 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118

Компьютерный форум Ru.Board » Компьютеры » Программы » Командная строка, батники, сценарии (bat, cmd)
Widok (19-11-2007 12:08): лимит страниц. продолжаем здесь


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

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.Board
© Ru.Board 2000-2020

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru