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

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

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

vu1tur (25-01-2010 12:41): лимит страниц, продолжение: http://forum.ru-board.com/topic.cgi?forum=62&topic=19668  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 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

   

vu1tur



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

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

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

  • Всего записей: 3690 | Зарегистр. 01-02-2003 | Отправлено: 11:37 26-05-2009 | Исправлено: TechnicsKuzya, 13:53 27-12-2009
    Primat081

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Здравствуйте, помогите решить такую задачу:
    Подсчитать количество подкаталогов в заданном (пользователем) каталоге, с/без учета скрытых/системных папок
    Заранее спасибо!!!

    Всего записей: 6 | Зарегистр. 04-12-2009 | Отправлено: 17:17 04-12-2009
    SANIOK_AV



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

    Всего записей: 485 | Зарегистр. 31-03-2009 | Отправлено: 18:01 04-12-2009
    Craager



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

    Цитата:
    Привет всем, подскажите скрипт или батник для несложной операции, а именно:
     
    Есть обновляемая каждый день папка (назовём её "X") и требуется батник, который будет делать резервную копию (backup) всех файлов и папок из папки "X" в условную папку "Y".
     
    Как это можно реализовать ?

     
    подскажите (((

    Всего записей: 385 | Зарегистр. 08-06-2006 | Отправлено: 19:49 04-12-2009
    yurkesha



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

    Цитата:
    Также для удаления концевых пробелов пользуйтесь скриптом от Nagual, или VBS-Скрипт-Модулем от ViSiToR.
    Если честно - задрали уже КРИВЫЕ скрипты написанные ОЧЕНЬ ГРАМОТНЫМИ, но очень торопливыми людьми  Сами усложняем себе жизнь да еще вдобавок и подаем дурной пример... Тем более что правила вобщем-то просты и общеизвестны.
    Чтобы не приходилось пользоваться данными (несомнено совершенными скриптами!) пишем скрипты правильно!
    крик души
    Жду пару дней уточнений и добавляю в шапку...

    ----------
    Всем непричастным рекомендую прогулки на свежем воздухе

    Всего записей: 2741 | Зарегистр. 15-12-2003 | Отправлено: 20:58 04-12-2009 | Исправлено: yurkesha, 12:50 05-12-2009
    wolf0425



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    yurkesha Подробнее...
     
    а еще нужен какой-то пример с переменными в цикле for

    Всего записей: 2928 | Зарегистр. 25-04-2007 | Отправлено: 22:59 04-12-2009 | Исправлено: wolf0425, 23:01 04-12-2009
    yurkesha



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

    ----------
    Всем непричастным рекомендую прогулки на свежем воздухе

    Всего записей: 2741 | Зарегистр. 15-12-2003 | Отправлено: 23:07 04-12-2009
    Craager



    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Люди, как добавить в батник между операциями паузу в 5-10 секунд?

    Всего записей: 385 | Зарегистр. 08-06-2006 | Отправлено: 23:10 04-12-2009
    yurkesha



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Craager
    смотрим в шапку - Делаем паузу в командном файле стандартными средствами Windows
     


    ----------
    Всем непричастным рекомендую прогулки на свежем воздухе

    Всего записей: 2741 | Зарегистр. 15-12-2003 | Отправлено: 23:17 04-12-2009
    king_stiven

    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    yurkesha
    что не так с
    Цитата:
    VBS-Скрипт-Модулем от ViSiToR.  
    ? у меня пашет.

    Всего записей: 2229 | Зарегистр. 17-07-2006 | Отправлено: 00:10 05-12-2009
    wolf0425



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Craager
    Цитата:
    как добавить в батник между операциями паузу в 5-10 секунд?

    не заморачивайся со скриптодвижком, ping -n 6 localhost >nul обеспечивает вполне повторяемую 5-секундную задержку c достаточно низкой нагрузкой на память/процессор.

    Всего записей: 2928 | Зарегистр. 25-04-2007 | Отправлено: 00:31 05-12-2009 | Исправлено: wolf0425, 04:56 05-12-2009
    yurkesha



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    king_stiven
    Все так - пашет и красиво написан...
    Только если скрипт требует применения такого модуля то именно сам скрипт который надо обрабатывать - кривой!
     
    Добавлено:
    То есть если код можно испортить добавлением хвостового пробела - он кривой...
    Предлагаю поместить рекомендации по созданию устойчивого к хвостовым пробелам в шапку. С описанием и примерами.
    Для этого собираю рекомендации - первые в моем посте выше и в посте wolf0425. Надеюсь что форумчане поддержат начинание...


    ----------
    Всем непричастным рекомендую прогулки на свежем воздухе

    Всего записей: 2741 | Зарегистр. 15-12-2003 | Отправлено: 10:25 05-12-2009 | Исправлено: yurkesha, 10:27 05-12-2009
    mugil_cephalus

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    yurkesha
    wolf0425
    как свой комент вывести на отдельную страницу не знаю, но по сути:
    yurkesha

    Цитата:
    (ECHO My sting for use)

    здесь опечатка? string?
    wolf0425

    Цитата:
    if errorlevel 1 (echo error!) else (echo success!)

    может так - if errorlevel 1 (echo error!) else echo success!

    Цитата:
    if not errorlevel 1 (echo success!)

    может так - if not errorlevel 1 echo success!
    ты сам говорил n страниц назад не увлекаться скобками в конструкции if, только если они критически необходимы - то использовать
    if /?
    Вот правильный пример, где все команды расположены в одной строке:
     
        IF EXIST имя_файла. (del имя_файла.) ELSE echo имя_файла. missing

    Всего записей: 1072 | Зарегистр. 07-09-2009 | Отправлено: 10:57 05-12-2009
    yurkesha



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    mugil_cephalus
    в принципе опечатка, но поскольку это просто тект для примера то непринципиально...
     
    All
    Еще - команда ECHO теоретически может быть опасна так как может приводить к выполнению кода
     
     
    Добавлено:
    В итоге безопасным будет вывод такого типа
     
     
    Добавлено:
    mugil_cephalus

    Цитата:
    как свой комент вывести на отдельную страницу не знаю

    используй теги [more]сообщение для выноса[/more]


    ----------
    Всем непричастным рекомендую прогулки на свежем воздухе

    Всего записей: 2741 | Зарегистр. 15-12-2003 | Отправлено: 11:45 05-12-2009
    mugil_cephalus

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

    Цитата:
    в принципе опечатка, но поскольку это просто тект для примера то непринципиально...  

    ну раз уж на повестке - скрупулезная педантичная (в хорошем смысле слова) правка скриптов
    Цитата:
    Если честно - задрали уже КРИВЫЕ скрипты  

     , то, имхо, newbies могут этого не понять
     

    Цитата:
    mugil_cephalus  
     
    Цитата:как свой комент вывести на отдельную страницу не знаю  
     
    используй теги Подробнее...  

     
    ок

    Всего записей: 1072 | Зарегистр. 07-09-2009 | Отправлено: 12:32 05-12-2009 | Исправлено: mugil_cephalus, 12:33 05-12-2009
    yurkesha



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

    ----------
    Всем непричастным рекомендую прогулки на свежем воздухе

    Всего записей: 2741 | Зарегистр. 15-12-2003 | Отправлено: 12:56 05-12-2009
    mugil_cephalus

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

    Цитата:
    а еще нужен какой-то пример с переменными в цикле for  

    лучше пример на один из самых часто задаваемых вопросов - значение (token field) в destinationStringM в destinationFile2 заменить на значение из sourceStringN из sourceFile1:
    1) в шапке есть вариант с sbs2.com
    2) создать вариант с for
    3) этот же пример на sed
     
    Добавлено:
    yurkesha

    Цитата:
    Вот вроде сообразил безопасную замену для ECHO

    думаю, надо еще в скобках указать (что это только CR или только LF или CR/LF)
    я в этом плохо разбираюсь, но думаю с дефинициями нужно сразу определиться - как часто говорят на forum.ru-board, - правильно сформулированный вопрос - пололвина ответа

    Всего записей: 1072 | Зарегистр. 07-09-2009 | Отправлено: 13:17 05-12-2009
    yurkesha



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    mugil_cephalus
    В данной ситуации "с переводом строки" обозначает 0D 0A то есть ровно так как при обычном ECHO

    ----------
    Всем непричастным рекомендую прогулки на свежем воздухе

    Всего записей: 2741 | Зарегистр. 15-12-2003 | Отправлено: 13:38 05-12-2009
    mugil_cephalus

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

    Цитата:
    В данной ситуации "с переводом строки" обозначает 0D 0A то есть ровно так как при обычном ECHO

    это я понимаю
     
    я имел ввиду, что указать в скобках, что
    Цитата:
    без перевода строки
    - это типа так:
     
    ... без перевода строки (без добавления CR/LF)

    Всего записей: 1072 | Зарегистр. 07-09-2009 | Отправлено: 13:45 05-12-2009
    yurkesha



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    mugil_cephalus
    Вот вроде оформил:
    вывод переменных со спецсимволами в содержимом на экран и в файл .cmd
     
    Добавлено:
    правильный способ присвоения и вывода значений переменных.cmd

    ----------
    Всем непричастным рекомендую прогулки на свежем воздухе

    Всего записей: 2741 | Зарегистр. 15-12-2003 | Отправлено: 14:04 05-12-2009 | Исправлено: yurkesha, 16:22 05-12-2009
    mugil_cephalus

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    yurkesha
    такими темпами - позовут в MS писать мануалы

    Всего записей: 1072 | Зарегистр. 07-09-2009 | Отправлено: 14:48 05-12-2009
       

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

    Компьютерный форум Ru.Board » Операционные системы » Microsoft Windows » Задачи на bat-файлах 7
    vu1tur (25-01-2010 12:41): лимит страниц, продолжение: http://forum.ru-board.com/topic.cgi?forum=62&topic=19668


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

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

    BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

    Рейтинг.ru