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

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

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

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

   

vu1tur



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

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

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

  • Всего записей: 3690 | Зарегистр. 01-02-2003 | Отправлено: 11:53 09-01-2011 | Исправлено: mazafakermazafaka, 11:22 04-06-2011
    lorents



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

    Всего записей: 3297 | Зарегистр. 30-12-2007 | Отправлено: 15:53 30-01-2011 | Исправлено: lorents, 15:55 30-01-2011
    king_stiven

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

    Всего записей: 2229 | Зарегистр. 17-07-2006 | Отправлено: 15:54 30-01-2011
    NIKZZZZ



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

    Цитата:
    Подскажите, пожалуйста как можно данный код сократить?  


    Код:
    Goto _%png%
    .....
    :_1
    :_2
    :_3
    :_4
    .....
    :_5
    :_6
    :_7
    :_8
    .......


    Всего записей: 5365 | Зарегистр. 08-02-2006 | Отправлено: 16:02 30-01-2011 | Исправлено: NIKZZZZ, 16:05 30-01-2011
    bomzzz



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

    Цитата:
     
    ECHO OFF
    COLOR 9F
    CLS
    set png=6
    set /a h=%png%/5+1
    echo %h%
    rem goto %h%
    pause
     

    идея понятна

    Всего записей: 13343 | Зарегистр. 13-01-2008 | Отправлено: 16:08 30-01-2011 | Исправлено: bomzzz, 16:08 30-01-2011
    01MDM



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

    Цитата:
    В конечных файлах все содержимое не важно, важны только цифры в рамке


    Код:
     
    @echo off
    setlocal
     
    for /f "tokens=1,2 delims=#=" %%i in ('type CONS#1_066666.QR') do call:split ".%%i"
    goto:eof
     
    :split
     
    if %1==". " goto:eof
     
    set "str=%~1"
    set "str=%str:. =%"
     
    if not "%str:~0,1%"=="." (
         
        1>>%str% echo -----------------
        set file=%str%
     
    ) else (
     
        echo %str:.=% | 1>>%file% findstr /b "[0-9]"
     
    )
     

     


    ----------
    Вопросы в личке останутся без ответа

    Всего записей: 2638 | Зарегистр. 13-02-2006 | Отправлено: 16:49 30-01-2011
    aidarsimon



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Здравствуйте. Нужно добавить параметры в реестр именно в текущее подключение по локальной сети.
     
    HKLM\SYSTEM\CurrentControlSet\services\Tcpip\Parameters\Interfaces\{fac2eb11-4f95-44a1-9aa7-76983519c896}
     
    вот как получить идентификатор (fac2eb11-4f95-44a1-9aa7-76983519c896) текущего подключения, точнее адаптера., чтобы скрипт работал на разных машинах.

    Всего записей: 3749 | Зарегистр. 06-09-2008 | Отправлено: 18:40 30-01-2011 | Исправлено: aidarsimon, 18:41 30-01-2011
    bomzzz



    Запрет на пост
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    REG QUERY "HKLM\SYSTEM\CurrentControlSet\services\Tcpip\Parameters\Interfaces\" /s
     
    ето чтоб все параметры и подразделы распечатать. а тебе надо понять какое из этих подключений текущее?
     
    Добавлено:
    это наверно через вми надо делать

    Всего записей: 13343 | Зарегистр. 13-01-2008 | Отправлено: 18:45 30-01-2011 | Исправлено: bomzzz, 18:46 30-01-2011
    aidarsimon



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    bomzzz
    надо в текущем подключении добавить два параметра. Главное узнать - какой текущий. Хотя у меня он один, неплохо было ба сделать универсальный скрипт, чтоб он создавал параметры в текущем локальном подключении

    Всего записей: 3749 | Зарегистр. 06-09-2008 | Отправлено: 19:24 30-01-2011
    bomzzz



    Запрет на пост
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    ну надо или через вми пытаться сделать или вообще на вбс скриптах. я так не знаю - гуглить надо. у меня в этом разделе пять подразделов, даже не знаю откуда столько набралось. когда эту винду ставил один сетевой адаптер я уже вытащил, сетевой адаптер + наверно встроенный тогда не был отключен, но без дров он вроде не должен был появится, + два модема, + сотовый телефон. как то так набралось наверно
     
    Добавлено:
    по реестру только по ип адресам можно различить, но кокое включина кокое отключина непонятно

    Всего записей: 13343 | Зарегистр. 13-01-2008 | Отправлено: 19:41 30-01-2011
    aidarsimon



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    bomzzz
    а по айпи можно проканать, например если начинается на 192.168..... не подскажешь, какое условие забить?

    Всего записей: 3749 | Зарегистр. 06-09-2008 | Отправлено: 20:16 30-01-2011
    godzilka46

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Добрый вечер, ребят помогите пожалуйста, нужен скриптик.
     
    Нужно чтобы скрипт проверял \\путь\ВС в этой папке файлик errorlist там будет куча строк  
    и в некоторых будет такое предложение "Закончил обрабатывать курский " , где курский (название городов, и таких городов будет 90), и потом в другом файлике \\путь\отчет напротив этого города ставил "+" помогите чем можите плиз...

    Всего записей: 1 | Зарегистр. 30-01-2011 | Отправлено: 23:09 30-01-2011
    king_stiven

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

    Всего записей: 2229 | Зарегистр. 17-07-2006 | Отправлено: 23:38 30-01-2011
    bomzzz



    Запрет на пост
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    aidarsimon
    ой я так с ходу не могу - я редко батниками балуюсь.
    надо наверно получить все подразделы этого раздела, и в каждом получить параметр IPAddress. потом его сравнивать. но тоже правило не абсолютное. навприемр если бы у меня было обе сетевые карты воткнуты в писиай, в обоих бы апи начинался на 192.168

    Всего записей: 13343 | Зарегистр. 13-01-2008 | Отправлено: 23:44 30-01-2011 | Исправлено: bomzzz, 23:44 30-01-2011
    lorents



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Добрый вечер!
    подскажите, пожалуйста, как можно объединить несколько файлов в один, если они лечат в одной папке?
    Просто не очень удобно писать

    Код:
    copy /b "файл1" + "файл2" + ... + "файлN" "файл"

    И еще вопрос, а можно после соединения, разделить эти файлы обратно, как было?

    ----------
    Image Catalyst - оптимизация изображений без потери качества

    Всего записей: 3297 | Зарегистр. 30-12-2007 | Отправлено: 01:04 31-01-2011
    bomzzz



    Запрет на пост
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    ну если они все ткст можно просто так напейсать вместо плюсикоф *.txt
     
    разделить конечно можно, только как ты себе это представляешь, что будет меткой деления?

    Всего записей: 13343 | Зарегистр. 13-01-2008 | Отправлено: 01:06 31-01-2011
    BVV63



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

    Цитата:
    как можно объединить несколько файлов в один, если они лечат в одной папке?

    Например, так:

    Код:
    PushD "<Полное_имя_папки>"
    CD . > "<Имя_конечного_файла>"
    For %%0 In (*.*) Do Copy /B "<Имя_конечного_файла>"+"%%0"
    PopD

    Всего записей: 3542 | Зарегистр. 17-08-2009 | Отправлено: 06:46 31-01-2011 | Исправлено: BVV63, 06:47 31-01-2011
    lorents



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

    Цитата:
     разделить конечно можно, только как ты себе это представляешь, что будет меткой деления?

    я вот тоже думаю, что будет меткой. Хорошо сейчас этот вопрос стоит теоретически.
     
    BVV63
    Спасибо за идею.

    ----------
    Image Catalyst - оптимизация изображений без потери качества

    Всего записей: 3297 | Зарегистр. 30-12-2007 | Отправлено: 09:39 31-01-2011
    Jin32



    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    wolf0425
    Неа, не работает, пишет только что "Не удается найти указанный файл." и больше ничего не происходит, видимо какая нибудь маленькая ошибка, но сам не исправлю так как слабо понимаю че батник делает.
     
    01MDM
    Работает но немного не то что хотелось бы, важны не только цифры в рамках но и сами рамки из решеток###, нужная программа обрабатывает только то что в рамке. Еще есть строчки вида
    ========== RAPS001#66666.QR ========== из них получаются файлы RAPS001 и без расширения вместо RAPS001#66666.QR
     
    Rush
    Вот твой работает на 100% тоже не понимаю как, но имея готовый код со временем разберусь что какая команда делает, это не самому писать
    Вообще всем спасибо за участие, со временем разберусь с каждым кодом, для общего развития.

    Всего записей: 50 | Зарегистр. 22-04-2007 | Отправлено: 19:40 31-01-2011
    bomzzz



    Запрет на пост
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    lorents
    можно метку деления влепить в объединенный файл, только надо знать что там внутри файлов, что может бюыть делителем. в крайнем случае можно записать точные размеры суммируемых файлов или наверно количество строк, потом поделить. если есть куда запейсать. можно прямо в батник.

    Всего записей: 13343 | Зарегистр. 13-01-2008 | Отправлено: 19:47 31-01-2011
    wolf0425



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

    Цитата:
    пишет только что "Не удается найти указанный файл." и больше ничего не происходит
    имя файла неверно же неправильно вписал - оно там одно

    Всего записей: 2928 | Зарегистр. 25-04-2007 | Отправлено: 11:42 01-02-2011
       

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

    Компьютерный форум Ru.Board » Операционные системы » Microsoft Windows » Задачи на bat-файлах 10
    vu1tur (29-07-2011 12:47): Задачи на bat-файлах 11


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

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

    BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

    Рейтинг.ru