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

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в 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
Kirillhome



Full Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Serge2005
Не красиво, но сделал...
 
Смотрите...

Всего записей: 426 | Зарегистр. 23-11-2004 | Отправлено: 23:20 24-08-2006 | Исправлено: Kirillhome, 23:21 24-08-2006
Serge2005

Full Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Kirillhome
Спасибо...но я не понимаю, что нужно сделать, чтоб он заработал.....Либо какие входящие атрибуты надо вписать? Либо где внутри надо изменить циффры? И точно здесь учитывается различное окончание вместо "name"?
Этот скрипт перебирает все файлы в папке, где лежит?

Всего записей: 554 | Зарегистр. 11-02-2006 | Отправлено: 23:29 24-08-2006
xitsa



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
GreaseOD
Вот еще есть страничка на которой много полезных скриптов и FAQ'ов по sed'у
tutorial.
Она на английском, но сам многое почерпнул оттуда

Всего записей: 103 | Зарегистр. 25-04-2006 | Отправлено: 23:30 24-08-2006 | Исправлено: xitsa, 23:31 24-08-2006
Serge2005

Full Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Где изменять цифры - нашел Минуты и секунды. А можно их с минусом, чтоб вычиталось? 60 минут - вычтет час? И та и та переменная от 0 до 60? Или до бесконечности?
Извините, я плохо еще разбираюсь в батниках...
 
Добавлено:
Увидел, конец имени любой
 
Добавлено:
Понял! При копировании из браузера в конец строчек добавились пробелы! Спасибо! Все прекрасно!!! Спасибо Большущее!!!!! %)
 
Добавлено:
Для часов и дней попробуя сам написать.....
А потом еще на вычитание времени (*кажется просто знак поменять, но ведь не прокатит!*)
Спасибо большое! Не думаю, что сам скоро справлюсь с полной задачей, буду совсем совсем благодарен за полный код...

Всего записей: 554 | Зарегистр. 11-02-2006 | Отправлено: 23:32 24-08-2006
Kirillhome



Full Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Serge2005
Собственно, было разобрано начало файла на составляющие YY DD MM HH MM SS
были заданы ещё две переменные (для сдвига минут и секунд)
Потом проверяется - не првышают ли полученные значения те, которые реально могут быть.
Время в сутках принято равным от 00:00:00 до 23:59:59.
Високосные года - не учитываются.
Был вынужден использовать двойное переименование (почему и сказал, что - нехорошо...), т.к. выполнение команды DIR "подхватывало" и новые файлы....
В последних строках добивался того, что бы цифры были в виде двух знаков.
 
Добавлено:
При вычитании надо будет использовать другие проверки....

Всего записей: 426 | Зарегистр. 23-11-2004 | Отправлено: 00:37 25-08-2006
ViSiToR



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

Цитата:
Возможно. Если особенно у тебя действительно один линк на строку:

 
У меня все линк и в файле, начинаются так URL=http://ссылка...
 
А как это применять? команду ставлю в батник, но ничего не переписывается, просто создаётся пустой файл output.txt и всё... а что такое f.sed: куда это прописывать? пробовал в батник, но не помогло.
 
Добавлено:
xitsa
 
Всё, разобрался - нужно было сделать файл f.sed, с содержимым что ты привёл в пример, а также, я не учёл тот факт, что у меня все ссылки (т.е символы URl=) находились с отступом от края строчки... так что всё теперь работает (подправил f.sed), большое спасибо!

----------
ViSiToR a.k.a CreatoR
CreatoR это не ник, CreatoR это стиль жизни!

Всего записей: 3251 | Зарегистр. 01-04-2006 | Отправлено: 09:59 25-08-2006
01MDM



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
1. Как проверить запущена служба или нет
Например schedule.
 
Конечно можно просто на всякий случай ее запустить или перезапустить, но хотелось бы покрасивее. Если служба запущена - продолжаем, если нет запускаем службу и продолжаем.
 
Интересует само условие.
 
2. Как спрятать вывод команды при запуске/останове службы. > nul не работает
 
Добавлено:
Или как узнать о существовании процесса? По аналогии `ps`. Может есть какие-нибудь программы с консольным интерфейсом.

Всего записей: 2638 | Зарегистр. 13-02-2006 | Отправлено: 12:17 25-08-2006
GOODmen



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

Всего записей: 366 | Зарегистр. 15-01-2004 | Отправлено: 13:16 25-08-2006
nitrax



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Добрый день.
 
Подскажите как запустить инсталяцию из батника, подождать завершения инсталяции и запустить другую инсталяцию.
 
Спасибо.

Всего записей: 21 | Зарегистр. 24-01-2006 | Отправлено: 13:34 25-08-2006
peculiar



Full Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
У меня тот  же вопрос как в XP/2003 прописать паузу к примеру на 40 секунд после первой команды. Задача такая одним батником по сети включит удаленный комп и после того как о включится - это примерно 40 сек - скопировать на него резервную копию. Дык вот никак не получается приостановить выполнение BAT файла после первой задачи. Как можно это решить ?
 
P.S. нашел решение своему вопросу -  
#  
утилита работает так : задаете время сколько надо на приостановление и все !
Удачки

Всего записей: 460 | Зарегистр. 09-12-2005 | Отправлено: 16:41 25-08-2006 | Исправлено: peculiar, 17:22 25-08-2006
KapralBel



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

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

Full Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Kirillhome
Увеличение времени:Подробнее...
 
Уменьшение времени:Подробнее...
Вроде работает, но я не уверен в правильности.....
И еще....при копировании с форума появляются пробелы в конце каждой строчки...

Всего записей: 554 | Зарегистр. 11-02-2006 | Отправлено: 16:53 25-08-2006
RussianNeuroMancer



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

Код:
 
Setup1.exe
Setup2.exe
 

 
KapralBel
Цитата:
Sleep /?
Пишет, что нет такой команды.


----------
Kubuntu - официальный сайт, форум, русскоязычный сайт.

Всего записей: 9403 | Зарегистр. 30-04-2005 | Отправлено: 16:55 25-08-2006
nitrax



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Да я так и делал, но появляется 2 запущенных инстяляшки одновременно.

Всего записей: 21 | Зарегистр. 24-01-2006 | Отправлено: 16:58 25-08-2006
Kirillhome



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

Цитата:
И еще....при копировании с форума появляются пробелы в конце каждой строчки...
 

Об этом писалось в начале топика. Мне казалось, что это даже есть в шапке....
 
С увеличением, похоже, всё верно, а с уменьшением - надо менять

Код:
 
if %f_Month%==1 (Set /A Max_Day=31)
if %f_Month%==2 (Set /A Max_Day=28)
if %f_Month%==3 (Set /A Max_Day=31)
if %f_Month%==4 (Set /A Max_Day=30)
if %f_Month%==5 (Set /A Max_Day=31)
if %f_Month%==6 (Set /A Max_Day=30)
if %f_Month%==7 (Set /A Max_Day=31)
if %f_Month%==8 (Set /A Max_Day=31)
if %f_Month%==9 (Set /A Max_Day=30)
if %f_Month%==10 (Set /A Max_Day=31)
if %f_Month%==11 (Set /A Max_Day=30)
if %f_Month%==12 (Set /A Max_Day=31)
 

на  

Код:
 
if %f_Month%==1 (Set /A Max_Day=31)
if %f_Month%==2 (Set /A Max_Day=31)
if %f_Month%==3 (Set /A Max_Day=28)
if %f_Month%==4 (Set /A Max_Day=31)
if %f_Month%==5 (Set /A Max_Day=30)
if %f_Month%==6 (Set /A Max_Day=31)
if %f_Month%==7 (Set /A Max_Day=30)
if %f_Month%==8 (Set /A Max_Day=31)
if %f_Month%==9 (Set /A Max_Day=31)
if %f_Month%==10 (Set /A Max_Day=30)
if %f_Month%==11 (Set /A Max_Day=31)
if %f_Month%==12 (Set /A Max_Day=30)
 

т.к. без изменения - от 1-го февраля отнять один день будет получится 28 января, а от 1-го марта - 31 февраля, что не правильно
 
Добавлено:
Нет, не правильно...
При "резком" изменении числа месяцев должен быть другой алгоритм (я учитывал, что месяц сдвигается максимум на единицу)...
 
Добавлено:
И я не знаю как решить эту задачу в общем плане...
К примеру - 31 января плюс месяц - чему будет равно??? (28 (29) февраля, 3 (2) марта)???

Всего записей: 426 | Зарегистр. 23-11-2004 | Отправлено: 17:13 25-08-2006 | Исправлено: Kirillhome, 17:35 25-08-2006
peculiar



Full Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
да только что пробовал - запускал с командной строки к примеру sleep 10  
вот на 10 сек и приостанавливается
D:\>sleep /?
usage: sleep howlong

Всего записей: 460 | Зарегистр. 09-12-2005 | Отправлено: 17:16 25-08-2006 | Исправлено: peculiar, 17:17 25-08-2006
GreaseOD

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

Цитата:
Добрый день.  
 
Подскажите как запустить инсталяцию из батника, подождать завершения инсталяции и запустить другую инсталяцию.  
 
Спасибо.

 
Если тебе надо устанавливать последовательно  батники  то  
 
call 1.bat
call 2.bat  
и т.д
 
 
Если ты запускаешь програмы  
start /wait landesk.exe
start /wait qwerty.exe
 

Всего записей: 30 | Зарегистр. 10-08-2006 | Отправлено: 17:23 25-08-2006
KapralBel



Platinum Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
RussianNeuroMancer
Sleep  - входит в Windows Resource Kit
http://download.microsoft.com/download/8/e/c/8ec3a7d8-05b4-440a-a71e-ca3ee25fe057/rktools.exe
12Mb

Всего записей: 11354 | Зарегистр. 16-02-2005 | Отправлено: 17:32 25-08-2006
Kirillhome



Full Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Ошибочное сообщение...

Всего записей: 426 | Зарегистр. 23-11-2004 | Отправлено: 17:35 25-08-2006 | Исправлено: Kirillhome, 17:36 25-08-2006
Serge2005

Full Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Kirillhome
Мда.....что-то жестоко получается...ладно. буду пользоваться чем есть. Итак огромное спасибо!

Всего записей: 554 | Зарегистр. 11-02-2006 | Отправлено: 17:40 25-08-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