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

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

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    smirnvlad
    Спасибо большое !
    объясни только строчку  
    ping -w 1000 -n 61 127.0.0.1

    Всего записей: 7 | Зарегистр. 24-07-2009 | Отправлено: 20:36 24-07-2009
    smirnvlad

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

    Цитата:
    объясни только строчку  
    ping -w 1000 -n 61 127.0.0.1

    эта команда своим выполнением создает паузу на 60 секунд, ссылки на другие варианты паузы можно посмотреть в шапке темы Готовые решения и частые вопросы

    Всего записей: 417 | Зарегистр. 31-03-2009 | Отправлено: 22:29 24-07-2009 | Исправлено: smirnvlad, 22:31 24-07-2009
    TX86

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

    Всего записей: 7 | Зарегистр. 24-07-2009 | Отправлено: 00:35 25-07-2009
    madmasles

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    01MDM
    smirnvlad
    king_stiven
     
    Большое Вам спасибо. C удалением папки более или менее разобрался.
     
    Теперь такой вопрос. Скрипт sss.vbs :
     
    Подробнее...
     
    выводит по очереди два окна с предложением что-либо ввести с двумя кнопками "ОК" и "Отмена".
    Возможно ли следующее:
    1. Выводить не два окна по очереди, а одно окно с двумя предложениями ввода.
    2. Убрать кнопку "Отмена" и оставить только "ОК".
    3. Проконтролировать ввод, т.е. если ничего не введено в какой-либо строке, вылазил MsgBox  "Вы не ввели "Ла-ла-ла" или "Да-Да-Да" и возврат к InputBox.
    Заранее спасибо.

    Всего записей: 1277 | Зарегистр. 25-09-2008 | Отправлено: 06:42 25-07-2009 | Исправлено: madmasles, 09:19 25-07-2009
    lorents



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

    Цитата:
    надо скрипт на VBScript или на чём умеешь.  

    понятно, спасибо, буду разбираться

    Всего записей: 3299 | Зарегистр. 30-12-2007 | Отправлено: 13:30 25-07-2009
    smirnvlad

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

    Цитата:
    Возможно ли следующее:
    1. Выводить не два окна по очереди, а одно окно с двумя предложениями ввода.
    2. Убрать кнопку "Отмена" и оставить только "ОК".
    3. Проконтролировать ввод, т.е. если ничего не введено в какой-либо строке, вылазил MsgBox  "Вы не ввели "Ла-ла-ла" или "Да-Да-Да" и возврат к InputBox.
    Заранее спасибо.

    1,2. нельзя
    3.
    Подробнее...

    Всего записей: 417 | Зарегистр. 31-03-2009 | Отправлено: 06:46 26-07-2009
    madmasles

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    smirnvlad
     
    Большое спасибо.
     3. Работает как надо. Даже лучше, чем я хотел. Т.е. даже если случайно нажимаешь "Отмена", идет возврат к вводу.
     

    Цитата:
    1,2. нельзя

     
    Я не совсем понял. Нельзя только в InputBox, или нельзя в принципе в .vbs.

    Всего записей: 1277 | Зарегистр. 25-09-2008 | Отправлено: 09:04 26-07-2009
    smirnvlad

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

    Цитата:
    Нельзя только в InputBox, или нельзя в принципе в .vbs.

    в .vbs
     

    Цитата:
    Т.е. даже если случайно нажимаешь "Отмена", идет возврат к вводу.  

    если при нажатии на отмену перестать надоедать пользователю, то надо добавить строку
    Подробнее...

    Всего записей: 417 | Зарегистр. 31-03-2009 | Отправлено: 07:29 27-07-2009
    madmasles

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    smirnvlad
     
    Спасибо.  
    Мне как раз надо надоедать пользователю, а то при отмене весь смысл теряется.

    Всего записей: 1277 | Зарегистр. 25-09-2008 | Отправлено: 07:44 27-07-2009 | Исправлено: madmasles, 07:45 27-07-2009
    steeled



    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Добрый день! Помогите, плиз, разобраться с написанием батника!
    Имеется - комплекс из N тачек. Выполняют технологические задачи на батниках. Все тачки в домене, залогинены под одним и тем же юзером - админом домена. Управляю всеми тачками через RDP.
    Каким образом запустить батник на другом компе с основной тачки? Пробовал psexec, но что-то не то, никак не разберусь. К примеру, если через psexec запустить обычный calc, то в процессах на удаленной тачке calc.exe появляется, но, блин, калькулятора самого я не наблюдаю на экране моника удаленного компа! Подскажите, плиз, образец батника!

    Всего записей: 9 | Зарегистр. 02-07-2009 | Отправлено: 13:56 27-07-2009
    newb1e

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Привет Всем! Нужна Ваша помощь!
    Проблема такого характера :
    Нужно проверить диск D на наличие всех файлов типа exe и сохранить их в отдельной директории согласно их нахождению . То есть :
    имеем  
    D:\Shara\123.exe
    D:\ABC\setup.exe
    и т.д.
    в итоге надо получить backup в виде
    D:\backup\Shara\123.exe
    D:\backup\ABC\setup.exe
    и т.д.  
    Как реализовать ?
     
    Добавлено:
    Сам себе отвечу :
    если на другой диск, можно одной командой:
    Код:
     
    XCopy D:\*.exe E:\backup\ /S
     
    На тот же диск примерно так:
    Код:
     
    @Echo Off
    SetLocal EnableExtensions
     
    Set BackupDir=D:\backup
    For /F "Delims=" %%I In ('Dir D:\*.exe /A-D /B /S') Do (
      Echo %%~I
      XCopy "%%~I" "%BackupDir%%%~pI" >nul
    )
     

    Всего записей: 6 | Зарегистр. 27-03-2006 | Отправлено: 14:54 27-07-2009
    king_stiven

    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    newb1e
    ключ /i у XCopy не забывай

    Всего записей: 2232 | Зарегистр. 17-07-2006 | Отправлено: 19:23 27-07-2009
    Farchmaher

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Доброго времени суток.
    Подскажите пожалуйста,как реализовать такую задачу:
    комп в локальной сети,на нем два логических диска C и D
    на D папка X(общедоступная).Нужно чтобы после включения компа
    папка X удалилась без следа минуя корзину  без возможности
    восстановления.При этом чтобы на экран не выводилось никаких
    диалоговых окон и без подтверждения удаления,вобщем без
    какого либо участия пользователя.Подскажите очень нужно.
    Заранее Благодарен.

    Всего записей: 1 | Зарегистр. 28-07-2009 | Отправлено: 23:40 28-07-2009
    madmasles

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Здравствуйте всем.
    Подскажите, пожалуйста, как создать из батника файл file.txt так, чтобы он обязательно был в кодировке DOS-866, если по умолчанию текстовые файлы создаются в 1251.

    Всего записей: 1277 | Зарегистр. 25-09-2008 | Отправлено: 01:45 29-07-2009
    smirnvlad

    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    madmasles
    Либо сохранить батник в 866 кодировке, тогда и файлы будут в 866, а если из внешней утилиты или батника в 1251, то перекодировать можно так

    Код:
     
    chcp 1251
    set "s=Текст в 1251 кодировке"
    chcp 866
    echo %s% > 866.txt
     


    Всего записей: 417 | Зарегистр. 31-03-2009 | Отправлено: 08:12 29-07-2009
    KapralBel



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

    Цитата:
    Подскажите, пожалуйста, как создать из батника файл file.txt так, чтобы он обязательно был в кодировке DOS-866, если по умолчанию текстовые файлы создаются в 1251.

    У меня все в 866
    поясни проблему
     
    Farchmaher
    RD /?

    Всего записей: 11354 | Зарегистр. 16-02-2005 | Отправлено: 08:15 29-07-2009
    madmasles

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    KapralBel
    Батник во время работы пишет лог.txt. У меня стоит АкелПад, у него в настройках по умолчанию DOS-866. Обычно по умолчанию стоит 1251.Т.е. на другом компьютере приходиться при начале работы открывать лог.txt и, после появления первых строчек (кракозябров), сохранять в 866 кодировке. Пытался прописывать и chcp 1251 1 > nul, и chcp 866 1 > nul, и chcp 1251 > nul, и chcp 866 > nul, и chcp 1251, и chcp 866, все равно в  
    лог.txt кракозябры в 1251 кодировке. Пытался перекодировщиком (fdoswin.exe) через временный файл, все равно не работает. Уже не знаю что делать.

    Всего записей: 1277 | Зарегистр. 25-09-2008 | Отправлено: 09:01 29-07-2009
    01MDM



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

    Цитата:
    Батник во время работы пишет лог.txt

    А в лог что конкретно пишется? Приведи пример батника.
     

    Всего записей: 2638 | Зарегистр. 13-02-2006 | Отправлено: 09:23 29-07-2009
    madmasles

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    01MDM
    Извините.
    Похоже, косяк мой. Делал все на стареньком ноутбуке. Он подвисал, подвисал и крякнул (жесткий диск). Пересел на другой компьютер и все стало ОК.
     
    Еще раз извините за потраченное на меня время.
     
    PS
    Батник подключает VPN к интернету, периодически пингует и пишет в лог
     
    echo  Произведено %cot% проверок - успех. %time:~0,8%. >> LogInternet.txt
     
    и т.д. и т.п.

    Всего записей: 1277 | Зарегистр. 25-09-2008 | Отправлено: 12:14 29-07-2009 | Исправлено: madmasles, 12:18 29-07-2009
    levn

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

    Всего записей: 13 | Зарегистр. 17-04-2009 | Отправлено: 15:51 29-07-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