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

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

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

vu1tur (04-11-2008 23:07): Задачи на bat-файлах 6  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 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

   

Nagual



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Задачи на bat-файлах 5
(часть 1, часть 2, часть 3 , часть 4)
Вопросы, задачи и их решения по работе с командными файлами, а также сопутствующие ссылки.

 
Важно: копируя батник через буфер обмена из форума не забывайте удалять пробелы в конце каждой строки, т.к. в некоторых случаях из-за этого программа будет работать неправильно!!!
 
Также для удаления концевых пробелов пользуйтесь скриптом от Nagual, или VBS-Скрипт-Модулем от ViSiToR.
 
Для перекодирования кирилицы 866<<>>1251 пользуйтесь онлайн сервисом Перекодировщик кириллицы

 
Дополняем шапку: добавляем готовые решения, полезные ссылки.
 
Примечание: Большие куски кода заключайте в тэг [more]  
 
Смежные темы:
В помощь системному администратору » Автоматизация администрирования
Программы » Командная строка, батники\сценарии
 
Полезные ссылки
 
Полезные утилиты
 
Готовые решения и частые вопросы:
  • Встроенный справочник по командам
  • Создание помощи по всем командам консоли 2000 и XP
  • Делаем паузу в командном файле стандартными средствами Windows
  • Альтернативные решения »
  • Работа с текстом, датой, и файлами »
  • Администрирование, автоматизация и сеть »
  • Работа с переменными и параметрами ком. строки »
     
    Описания работы команд и символов участниками темы:
    · setlocal enabledelayedexpansion и переменные окружения
    · символы & и && в командной строке
    · Переменная %0

  • Всего записей: 528 | Зарегистр. 06-01-2006 | Отправлено: 12:28 19-03-2008 | Исправлено: Nagual, 01:02 24-09-2008
    sVx



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

    Цитата:
    Всем привет нужна помощ знающих людей возможно ли посредством батника зайти по телнету на 198.168.1.1 потом ввести пароль 1234 потом выполнить команду 24 потом команду 8 заранее спасибо за помощ

    с этим хорошо справляеться autoTln

    Всего записей: 157 | Зарегистр. 17-06-2004 | Отправлено: 06:19 16-06-2008 | Исправлено: sVx, 06:25 16-06-2008
    king_stiven

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

    Цитата:
    Как получить текущую папку запуска скрипта

    в шапке

    Цитата:
    Переменная %0


    Всего записей: 2167 | Зарегистр. 17-07-2006 | Отправлено: 13:43 16-06-2008
    UstasSSR

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

    Всего записей: 60 | Зарегистр. 02-02-2008 | Отправлено: 15:24 16-06-2008
    JI063uk



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

     
    Подскажите плиз как с помощью батника открыть папке типо Е:\video т.е. щелкаешь по батнику он тебе открывает папку video не в своем досовском окне  а в винде? Очень надо...
     

    Всего записей: 55 | Зарегистр. 24-01-2008 | Отправлено: 16:02 16-06-2008
    king_stiven

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

    Код:
    start "" "Е:\video"

    Всего записей: 2167 | Зарегистр. 17-07-2006 | Отправлено: 17:33 16-06-2008
    BaND1Tsp

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

    Всего записей: 117 | Зарегистр. 13-06-2008 | Отправлено: 17:59 16-06-2008
    Propretor



    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    01MDM
    Спасибо за помощь.

    Всего записей: 306 | Зарегистр. 12-03-2003 | Отправлено: 20:19 16-06-2008
    01MDM



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

    Цитата:
    кто-нибудь знает как заставить батник записывать все свои действия в лог?

    Вроде недавно был точно такой же вопрос
     
    Убрать в батнике строку `@echo off` и вызывать:

    Код:
     
    your.cmd 1>batch.log 2>&1
     


    Всего записей: 2638 | Зарегистр. 13-02-2006 | Отправлено: 23:59 16-06-2008
    Nikitos2

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Ребята, помогите написать батник для запуска приложения, т.к. сама в этом деле полный нуль (или ноль?...)  
    Задача следующая. Есть каталог, C:\Exchange\, в него перидически  попадают файлы, с именем Str16062008120050.txt. Количество файлов неопределенное, т.е. могут быть, могут и не быть. Батник должен проверить наличие файлов по маске Str*.txt, и если такие (или такой) есть, то запустить приложение командой D:\Transport.exe -x(<здесь имя найденного файла>)  
    Я пробую делать так:  
    FOR %%i IN(C:\Exchange) DO IF EXIST %%C:\Exchange\Str*.txt SET par=%i //это, как я думаю, для того, чтобы сначала присвоить параметры для найденных файлов, для дальнейшего использоания  
    а вот что и как дальше - лес дремучий...  
    Заранее спасибо!

    Всего записей: 7 | Зарегистр. 16-06-2008 | Отправлено: 05:47 17-06-2008
    01MDM



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

    Код:
     
    @echo off
    pushd C:\Exchange
    for %%i in (str*.txt) do start "" D:\Transport.exe -x %%i
    popd
     

     
    start /?
     
     

    Всего записей: 2638 | Зарегистр. 13-02-2006 | Отправлено: 09:08 17-06-2008 | Исправлено: 01MDM, 09:09 17-06-2008
    Nikitos2

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    01MDM
    Спасибо большое, получается, но вот незадача - если файл не один, а два или больше - сразу при работе батника появляются окна (по количеству файлов), и окно выполнения запускаемого приложения (хотя, в принципе. это не мешает) и дальше - с первым файлом отрабатывает приложение, а на остальных выходит ошибка Windows, ...-обнаружена ошибка. Приложение будет закрыто. Приносим извинения за неудобства... И предложение отправить отчет...
    Видимо, нужно как-то дождаться выполнения приложения с первым файлом, и только потом запускать на выполнение приложение с параметром следующего файла, но вот как это сделать - не знаю...

    Всего записей: 7 | Зарегистр. 16-06-2008 | Отправлено: 10:36 17-06-2008
    01MDM



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Nikitos2
    Поэтому я и написал start /?
    Добавь ключ /wait к команде start
     

    Код:
     
    ... do start /wait "" "D:\Transport.exe" -x %%i
     


    Всего записей: 2638 | Зарегистр. 13-02-2006 | Отправлено: 10:44 17-06-2008
    Nikitos2

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

    Цитата:
    01MDM

    Спасибо! Да, я обратила внимание на это, конечно, но вот по незнанию писала этот ключ неправильно - после команды, вот и не получалось...
     

    Всего записей: 7 | Зарегистр. 16-06-2008 | Отправлено: 11:41 17-06-2008
    JohnRD

    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    всем доброго дня, вечера
     
    кто пользовал soon.exe
     
    интересная вещь, запускаю батник в конце которого стоит soon, чтобы запустить батник снова с определенным интервалом, сам смотрю
    командой Schtasks очередные джобы, и заметил следующее, я выставил интревал запуска 1 мин, он же soon видимо умничает и через некоторое время выставляет время на минут 15-20 вперед для запуска следующий раз, в чем прикол?
    или в хелпе что то есть по этому поводу?
     

    Код:
    E:\install\GetMail>SOON.EXE /?
     
    -----------------------------------
    SOON  :  Command Scheduling Utility
    -----------------------------------
     
    Usage : SOON [\\computername] [delay] [/INTERACTIVE] "command"
       or : SOON /D [/L:n] [/R:n] [/I:{ON|OFF}]
     
    delay : the number of seconds from now when the scheduled job should start.
     
       /D : modify Default settings and/or display their current values.
       /L : set LocalDelay - default delay for Local jobs - initially 5 seconds.
       /R : set RemoteDelay - default delay for Remote jobs - initially 15 seconds.
       /I : set InteractiveAlways option - initially OFF.
     
    SOON schedules a job to run in the near future, a number of seconds from now.
    SOON closely resembles the AT command because SOON simply runs a suitable AT
    command. For a details of the other arguments run "AT /?" without the quotes.
     
    Examples : SOON CMD /C C:\JOBS\BATCH.CMD
               SOON 10 CMD /C C:\JOBS\BATCH.CMD
               SOON \\SERVER 60 /C \JOBS\BATCH.CMD
               SOON \\SERVER /INTERACTIVE CMD /C C:\JOBS\BATCH.CMD
               SOON /d /l:2 /r:30 /i:on
     
    Current Settings :     InteractiveAlways = OFF
                        LocalDelay (seconds) = 5
                       RemoteDelay (seconds) = 15

    Добавлено:
    или дело в том что я не положил туда At.exe в папку где soon.exe
    хотя в %SystemRoot%\System32 он есть..
     
    Files Required
     
    Soon.exe  
    At.exe (standard Windows 2000 tool) must be in your path  
    Schedule Service (standard Windows 2000 service) must be running on the target computer  

    Всего записей: 205 | Зарегистр. 29-08-2004 | Отправлено: 14:28 17-06-2008 | Исправлено: JohnRD, 14:35 17-06-2008
    igor_andreev

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    JohnRD
    Используй delay 70 сек. и больше

    Всего записей: 1667 | Зарегистр. 08-12-2004 | Отправлено: 14:33 17-06-2008
    JohnRD

    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    igor_andreev
    тоесть не меньше 70с
    так я выставляю 100, это больше..
     
    Добавлено:
    HelioSS
    Elroir

    Цитата:
    А как запустить Internet-соединение как сервис?

     
    думаю должно получиться..., именно соединение с инетом не делал но cmd пускаю как сервис очень часто и вполне доволен..
     
    Для Windows XP следюющие действия
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon
    Cоздайте новый ключ KeepRasConnections Тип: REG_SZ
    Устанавливаем его значение в 1
    из пакета Windows Server 2003 Resource Kit Tools
    http://www.microsoft.com/downloads/details.aspx?FamilyID=9D467A69-57FF-4AE7-96EE-B18C4790CFFD&displaylang=en
    нужны следующие файлы
    AUTOEXNT.EXE, SERVMESS.DLL, INSTEXNT.EXE, AUTOEXNT.BAT(создаем самостоятельно)  
    Создаем подключение PPPoE к провайдеру с именем agatel
    добавляем в файл AUTOEXNT.BAT строчки:
    c:\windows\system32\rasdial.exe agatel <login> <pass>
    exit
    копируем файлы AUTOEXNT.EXE, SERVMESS.DLL, INSTEXNT.EXE, AUTOEXNT.BAT в c:\windows\system32\
    запускаем
    INSTEXNT.EXE install
    Идем в запускаемые службы и проверяем что сервис AUTOEXNT запускается автоматически
    перегружаемся
    и наслаждаемся жизнью..
     
    спасибо за постоянную помощь всем..

    Всего записей: 205 | Зарегистр. 29-08-2004 | Отправлено: 14:38 17-06-2008 | Исправлено: JohnRD, 15:02 17-06-2008
    z1riser

    Newbie
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    Задачка... Бекаплю доки в сети так..
     

    Код:
     
     
    rem Updated 10/06/08 by z1
    @echo off
    @set dircmd=/b
         
    set folder=Documents and Settings
     
     
    for /F "tokens=1 usebackq delims==\ " %%i IN (`net view`) DO (
     
    echo Start coping %%i...
    start /wait /min /high robocopy.exe "\\%%i\C$" X:\backup\uim\%%i\C *.doc *.xls /S /R:1 /W:120 /XD RECYCLER batmail "Application Data" game* "Default User" "&#255;&#225;&#237;&#189;«&#161;&#948;" "Local Settings" windows winxp wxp w2k winnt "Program Files" Temp NetHood Recycled Install "The Bat!" "System Volume Information" readme /XF "~*.*" readme /XJ /XO
    start /wait /min /high robocopy.exe "\\%%i\D$" X:\backup\uim\%%i\D *.doc *.xls /S /R:0 /W:1 /XD RECYCLER SCANJET batmail "Application Data" game* "Default User" "&#255;&#225;&#237;&#189;«&#161;&#948;" "Local Settings" Temp Recycled Install readme/XF "~*.*" "System Volume Information" readme /XJ /XO
     
     

     
    Все работает, но! подключение сервера 1Г, тазиков 100М, тоесть хочу чтобы одновременно в 10 потоков работало..
    КАК ?

    Всего записей: 22 | Зарегистр. 09-07-2007 | Отправлено: 15:09 17-06-2008
    igor_andreev

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

    Цитата:
     подключение сервера 1Г, тазиков 100М,

    Ты имеешь ввиду, что в серваке стоит гигабитная сетевуха? Сеть работает на скорости устройства с наименьшей пропускной способностью. Чтоб был гигабит - нужны гигабитные сетевухи на рабочих станциях и соответствующие кабели(6-й категории). Батники тут никаким боком...
     
    Добавлено:
    Не, посмотрел в спецификации - категории 5e по идее достаточно. Давно шнурки не таскал, года четыре уже все на wi-fi

    Всего записей: 1667 | Зарегистр. 08-12-2004 | Отправлено: 18:28 17-06-2008
    boss911



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Есть пакетный файл, хочу добавить в начало скрипта команду на проверку наличия файла(ов) в конкретной директории (рядом с батником), если файлы не найдены, скрипт прекращает работу. Вот мне подсказали следующие:

    Код:
    If Not Exist MyFolder\*.dll (
     Echo.
     Echo Џ взҐ**лҐ д ©«л *Ґ * ©¤Ґ*л. “бв *®ўЄ  Ўг¤Ґв ЇаҐаў * .
     Echo.
     Pause
     Exit
    )

    Все работает как мне надо, только вот оно проверяет маску файлов по расширению .dll , а мне хотелось бы (нужно), чтобы оно проверяло наличие файла(ов) в независимости от его типа, то есть, там может лежать любой тип файла.

    Код:
    If Not Exist PackFiles\*.*
    If Not Exist PackFiles\*

    - этот метод почему-то не срабатывает. Подскажите, плиз.

    ----------
    Мама не горюй

    Всего записей: 3586 | Зарегистр. 29-01-2005 | Отправлено: 20:07 17-06-2008
    01MDM



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

    Код:
     
     
    dir /b /a PackFiles\*.* | findstr [a-zA-Z0-9] 1>nul && (
            echo 0
    ) || (
            echo 1
    )
     
     

     
    0 - файлы есть
    1 - папка пустая

    Всего записей: 2638 | Зарегистр. 13-02-2006 | Отправлено: 20:20 17-06-2008
       

    Страницы: 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

    Компьютерный форум Ru.Board » Операционные системы » Microsoft Windows » Задачи на bat-файлах 5
    vu1tur (04-11-2008 23:07): Задачи на bat-файлах 6


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

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

    BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

    Рейтинг.ru