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

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



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Collapse Troll
    for %%i in (\\192.168.102.184\DLL\pj*.dll) do regsvr32 %%i  
    for %%i in (\\192.168.102.184\DLL\pj*.ocx) do regsvr32 %%i

    ----------
    0 программистов ругал сердитый шеф
    Потом уволил одного, и стало их FF

    Всего записей: 6080 | Зарегистр. 22-10-2005 | Отправлено: 17:43 03-09-2008
    NovaC

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

    Код:
    0,000,001,000

    убрать ведущие нули с запятыми, т.е. получить строку вида :

    Код:
    1,000


    Всего записей: 95 | Зарегистр. 09-01-2008 | Отправлено: 04:32 04-09-2008
    01MDM



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    NovaC
     
    Такой вариант, отредактируй если что:

    Код:
     
    @echo off
    setlocal
    set a=0,001,002,003
     
    for %%i in (%a%) do (
        set /a tok+=1
        if 0x%%i gtr 0 goto:next
    )
    :next
    for /f "tokens=%tok%* delims=," %%i in ("%a%") do set a=%%i,%%j
    :a
    if %a:~0,1% equ 0 set a=%a:~1% && goto:a
     
    echo %a%  
     

     
    PS Исправил первый вариант

    Всего записей: 2638 | Зарегистр. 13-02-2006 | Отправлено: 09:35 04-09-2008 | Исправлено: 01MDM, 16:07 04-09-2008
    Collapse Troll

    Advanced Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    Abs62
    Спасибо за ответ!
    Недавно тоже сделал, только еще со "start":

    Цитата:
    for %%i in (\\192.168.102.184\in-out\dlls\pj*.dll) do start regsvr32 %%i
    for %%i in (\\192.168.102.184\in-out\dlls\pj*.ocx) do start regsvr32 %%i

     
     
     
    Добавлено:
    Abs62
    Спасибо за ответ!
    Недавно тоже сделал, только еще со "start":

    Цитата:
    for %%i in (\\192.168.102.184\in-out\dlls\pj*.dll) do start regsvr32 %%i
    for %%i in (\\192.168.102.184\in-out\dlls\pj*.ocx) do start regsvr32 %%i

     

    Всего записей: 791 | Зарегистр. 05-08-2006 | Отправлено: 10:21 04-09-2008
    VitRom

    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Уп-с, уже ответили аднака.
    Хотя всё равно

    Всего записей: 3098 | Зарегистр. 18-06-2006 | Отправлено: 14:00 04-09-2008 | Исправлено: VitRom, 14:07 04-09-2008
    yuriym

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Подскажите  
    Как можно автоматом запускать "бат" файл после удачного диалАп соединения,
    стандартными средствами винды XP prof?

    Всего записей: 17 | Зарегистр. 25-12-2005 | Отправлено: 16:47 04-09-2008
    KapralBel



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

    Код:
    EVENTTRIGGERS /Create /EID 20158 /tr InternetOn /tk C:\InternetOn.cmd

    Всего записей: 11354 | Зарегистр. 16-02-2005 | Отправлено: 16:59 04-09-2008
    krek89



    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Здраствуйте уважаемые форумчане. Помогите пожалуйста! Нужно написать bat файл который будет чистить любую паку (с любым имям) на диске D. Нужно очень срочно. Жду ответа с нетерпением

    Всего записей: 4 | Зарегистр. 18-07-2008 | Отправлено: 18:43 04-09-2008
    KapralBel



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

    Код:
     
    @Echo Off
    Set papka=D:\download\media\fantasy
    PushD "%papka%"
    RD . /q /s
    PopD

    Всего записей: 11354 | Зарегистр. 16-02-2005 | Отправлено: 19:26 04-09-2008
    krek89



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

    Всего записей: 4 | Зарегистр. 18-07-2008 | Отправлено: 19:49 04-09-2008
    Skus

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Подскажите пожалуйста
    Как передать в переменную DDD число месяц год из
    curtime32 $d$M$y
    Спасибо

    Всего записей: 2 | Зарегистр. 05-09-2008 | Отправлено: 03:58 05-09-2008
    guest 80 247

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    прветствую всех
     
    научите как скриптом поднять сетевой интерфсейс в ХР??
     
    РЕШЕНО:
    devcon enable "ID"

    Всего записей: 46 | Зарегистр. 28-09-2005 | Отправлено: 06:06 05-09-2008 | Исправлено: guest 80 247, 06:23 05-09-2008
    ladgalec

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

    Всего записей: 6 | Зарегистр. 29-08-2008 | Отправлено: 06:08 05-09-2008
    NovaC

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

    Цитата:
    Такой вариант, отредактируй если что

    СПАСИБО

    Всего записей: 95 | Зарегистр. 09-01-2008 | Отправлено: 06:16 05-09-2008
    Dekabryi



    Junior Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    Доброе время суток!
    Есть такая пионерская задача.
    нужно сравнить 2 группы из АД  
    типа  
    1) группа INTERNET  
    2) группа ICQ  
    и при случаее совпадения резальтат записать в виде  %username% и группа  
     
    Группа интернет 200 пользователей  
    Группа ICQ  50 пользователей  
     
     
    Если кто то знает подобное решене подскажите плз.
    если это обсуждалось в одном из томипок не обижусь если ткнети носом  
     
     
    Пытался что то такое съделать.
    for /f  "eol=  tokens =1" %%i in (user.txt) do dsget group "CN=administrators,CN=Builtin,DC=ABC,DC=local" -members -expand | find "%%i" >> u.txt
     
    И вот еще  
     
    dsquery group -name "internet" | dsget group -members  вот так отрабатывает
     
    хотелось бы подставить значения из другой группы и сравнить .

    Всего записей: 44 | Зарегистр. 29-05-2006 | Отправлено: 07:02 05-09-2008 | Исправлено: Dekabryi, 09:22 05-09-2008
    ilja333

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Возможно здесь уже есть решение но читать сотни страниц уйдет несколько недель.Поэтому пишу сюда.Мне нужно от батника следующее: К примеру батник читал из реестра "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run" параметр myprogram,значение к которому тоесть путь программы самому батнику и предстоит узнать.Собстевнно решение почти нашел,но батник со следующим кодом:
     
    @echo off
    reg export "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run" C:\test.reg>NUL
    FOR /F "TOKENS=2 DELIMS==" %%A IN ('FIND /I "myprogram" C:\test.reg') DO SET test=%%A
    echo.Program Dir: %test%
    pause
     
    выдает содержание параметра,но с двойними слешами "\\"соответственно путь не верный из за этого, вот если бы еще обработать не нужные "\".Просьба помоч,если здесь уже такое обсуждалось кинте пожалуйста ссылку.

    Всего записей: 2 | Зарегистр. 05-09-2008 | Отправлено: 19:00 05-09-2008
    Nagual



    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    ilja333
    было много раз, повторение...
    Код:
    @echo off
    set "pr=myprogram"
    for /f "tokens=2*" %%a in ('reg query "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run"^|find /i "%pr%"') do set pd=%%b
    echo
    .Program Dir: %pd%
     
    Добавлено:
    будет работать, если имя программы состоит из одного слова
     
    Добавлено:
    а так должно работать в любом случае
    Код:
    @echo off
    set "pr=Ashampoo Core Tuner"
    for /f "tokens=1* delims=:" %%a in ('reg query "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run"^|find /i "%pr%"') do (
    set
    rp1=%%a
    set
    rp2=%%b
    )
    set rp1=%rp1:~-1%
    set
    rp="%rp1%:%rp2%
    echo
    Run program (with parameters): %rp%

    Всего записей: 528 | Зарегистр. 06-01-2006 | Отправлено: 21:32 05-09-2008 | Исправлено: Nagual, 21:55 05-09-2008
    VitRom

    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    ilja333, "версия для печати" и <Ctrl+F> -- рулёз
     
    Nagual, к чему такие сложности?
    <Win+R>cmd<enter>reg query /?<enter>

    Код:
    REG QUERY Раздел [/v Параметр | /ve] [/s]

     
    ЗЫ. а вот вывод уже разобрать с FOR (можно указать delims=<tab>)

    Всего записей: 3098 | Зарегистр. 18-06-2006 | Отправлено: 22:17 05-09-2008 | Исправлено: VitRom, 22:23 05-09-2008
    ilja333

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    To: Nagual
    Огромное спасибо за код.
     
    To: VitRom
    Учту,но не совсем согласен с отправкой в "<Win+R>cmd<enter>reg query /?<enter>",так как я новичек по написанию хоть каких-нибуть цельных батников,а также еще не услел поступить на ИТ-шника,а за CMD help я сегодня и так весь день просидел,врятли мне в данном случае бы помогло.Также читал этот форум и в первом посте как раз код был выдернут из друхих задач с вашего форума-в подредактивованном виде.

    Всего записей: 2 | Зарегистр. 05-09-2008 | Отправлено: 00:19 06-09-2008
    Skus

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

    Всего записей: 2 | Зарегистр. 05-09-2008 | Отправлено: 02:01 06-09-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.B0ard
    © Ru.B0ard 2000-2024

    BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

    Рейтинг.ru