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

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

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

vu1tur (04-09-2010 17:46): http://forum.ru-board.com/topic.cgi?forum=62&topic=21297  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 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 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199

   

vu1tur



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

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

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

  • Всего записей: 3690 | Зарегистр. 01-02-2003 | Отправлено: 12:40 25-01-2010 | Исправлено: bomzzz, 13:37 20-08-2010
    us0r



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

    Всего записей: 407 | Зарегистр. 06-12-2007 | Отправлено: 19:34 20-08-2010
    Serge568

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    убирал уже. Результат одинаков. Загнал всё в одну строку через &&. Одинаково. Самое сьрашное что оно повторяет сточку сета. ЗагадкО.  
    поменял слеши на "-" - закрывается коммандная стока сразу. но ему ведь без разницы слеши или минусы.

    Всего записей: 10 | Зарегистр. 20-08-2010 | Отправлено: 19:43 20-08-2010 | Исправлено: Serge568, 19:51 20-08-2010
    us0r



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

    Код:
    @echo off
    cls
    setlocal
    set /p timer=Seconds:  
    shutdown /f /s /t %timer%
    :terminate
    set /p abort=Press "A" for abort...
    if /i "%abort%"=="a" shutdown /a  
    goto terminate
    endlocal

    Всего записей: 407 | Зарегистр. 06-12-2007 | Отправлено: 19:50 20-08-2010
    bomzzz



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

    Всего записей: 13343 | Зарегистр. 13-01-2008 | Отправлено: 19:55 20-08-2010
    Serge568

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Бугагагаагаг, я врубил
    конфликт имён комманд =) батник назывался именем одной из комманд. Я - лось, спасибо двуногим =)

    Всего записей: 10 | Зарегистр. 20-08-2010 | Отправлено: 19:57 20-08-2010
    HA3APET

    Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    Есть D:\prog f\drweb!\drWU\Mirror
    Есть bat-файл, выполняется из папки D:\prog f\

    Код:
    "drweb!\DrWebUpW.exe" /UA /URL:"drWU\Mirror"
    "drweb!\DrWebUpW.exe" /UVB

    Но если этот файл поместить в планировщик, то при его выполнении "теряются" пути
    Подскажите пожалуйста, что прописать в батнике, что бы он работал и в планировщике (и при этом пути прописанные в нём были относительными. Чтоб я мог взять всю папку drweb!, перенести в другое место, добавить из него bat и он работал)
     
    Решил эту задачку с помощью  Делфи, но хочется реализовать через командный файл если это вообще возможно.
    Заранее, спасибо.

    Всего записей: 321 | Зарегистр. 28-01-2009 | Отправлено: 20:15 20-08-2010 | Исправлено: HA3APET, 20:19 20-08-2010
    bomzzz



    Запрет на пост
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    наверно рабочий путь батника задать отличный от рабочего пути планировщика
     
    Добавлено:
    CD /D %~DP0

    Всего записей: 13343 | Зарегистр. 13-01-2008 | Отправлено: 20:26 20-08-2010
    HA3APET

    Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    bomzzz
    Я в этом не силён, расскажите подробнее.
    Вроде так работает

    Код:
    "%~dp0\drweb!\DrWebUpW.exe" /UA /URL:"%~dp0\drWU\Mirror"
    "%~dp0\drweb!\DrWebUpW.exe" /UVB

    Поправьте если, что...

    Всего записей: 321 | Зарегистр. 28-01-2009 | Отправлено: 21:17 20-08-2010 | Исправлено: HA3APET, 21:55 20-08-2010
    us0r



    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    "%~dp0\drweb!\DrWebUpW.exe" /UA /URL:"%~dp0\drWU\Mirror"
     
    O_O Чё за url такой?

    Всего записей: 407 | Зарегистр. 06-12-2007 | Отправлено: 22:59 20-08-2010 | Исправлено: us0r, 23:04 20-08-2010
    bomzzz



    Запрет на пост
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    "%~dp0 - папко где лежит батничег - \drweb!\DrWebUpW.exe"
     
    Добавлено:
    "%~dp0\drweb!\DrWebUpW.exe" /UA /URL:"%~dp0\drWU\Mirror"  
    после того как выполниться эта команда программе DrWebUpW.exe кроме коммандного параметра будет передан из батника рабочий путь  - опять же рабочий путь планировщика заданий.  
    CD /D %~DP0 - сначала смени рабочую папку батника на ту в которой он лежит
    потом уже можно писать и так  
    "%~dp0\drweb!\DrWebUpW.exe" /UA /URL:"%~dp0\drWU\Mirror"  
    и так
    ".\drweb!\DrWebUpW.exe" /UA /URL:".\drWU\Mirror"
    хотя возножно так
    SET PATH=%~DP0
    ".\drweb!\DrWebUpW.exe" /UA /URL:"%PATH%\drWU\Mirror"
    в зависимости от смысла всего.  
    есть еще команды PUSHD POPD которые в случае необходимости позволяют сохранять предъидущие пути, не использовал конкретно ничего не могу сказать
     
     
    Добавлено:
    вот я сам про эту фигню всегда забываю и вспоминаю когда планировщиками заданий (даунлоадмастера в основном) запускаю батники. поэтому в программах надо учитывать, если это важно для работы программы нужно менять путь насильно.
     
    Добавлено:
    да это именно с планировщиками связано во всех других случаях обычно совпадает передача пути батника с целями работы

    Всего записей: 13343 | Зарегистр. 13-01-2008 | Отправлено: 03:54 21-08-2010
    HA3APET

    Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    bomzzz
    Спасибо, за информацию, реально обогатился полезным знанием, всё настроил и всё работает.

    Всего записей: 321 | Зарегистр. 28-01-2009 | Отправлено: 16:06 21-08-2010
    powernic

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    подскажите как можно реализовать такую задачу:
    При включении bat-ника должно провериться соединение с сервером (ftp.serv.com)
    если соединение есть, то выполняеться определенная команда, а если нет, то конец программы.

    Всего записей: 14 | Зарегистр. 07-08-2010 | Отправлено: 17:40 21-08-2010
    bomzzz



    Запрет на пост
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    powernic
    соединение есть понятие растяжимое. используй команнду FTP и исследуй разницу в ответах работает не работает.
    пример использования команды ftp

    Цитата:
     
    ECHO OFF
    COLOR 9F
    CLS
    echo OPEN ftp.mozilla.org>MYFTP.txt
    echo ANONYMOUS>>MYFTP.txt
    echo 123>>MYFTP.txt
    echo BELL>>MYFTP.txt
    echo STATUS>>MYFTP.txt
    echo DIR>>MYFTP.txt
    echo CD pub>>MYFTP.txt
    echo DIR>>MYFTP.txt
    echo CD firefox>>MYFTP.txt
    echo DIR>>MYFTP.txt
    echo CD releases>>MYFTP.txt
    echo DIR>>MYFTP.txt
    echo CD 3.5.3>>MYFTP.txt
    echo DIR>>MYFTP.txt
    echo CD win32>>MYFTP.txt
    echo DIR>>MYFTP.txt
    echo CD ru>>MYFTP.txt
    echo DIR>>MYFTP.txt
    echo binary>>MYFTP.txt
    echo get "Firefox Setup 3.5.3.exe">>MYFTP.txt
    echo quit>>MYFTP.txt
    ftp -s:myftp.txt
    pause
     

    Всего записей: 13343 | Зарегистр. 13-01-2008 | Отправлено: 17:57 21-08-2010 | Исправлено: bomzzz, 18:02 21-08-2010
    powernic

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

    Всего записей: 14 | Зарегистр. 07-08-2010 | Отправлено: 18:04 21-08-2010
    bomzzz



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

    Всего записей: 13343 | Зарегистр. 13-01-2008 | Отправлено: 18:05 21-08-2010
    Seryoga204



    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Подскажите пожалуйста можно такое сделать с помощью батника?
    Есть ftp = 10.32.15.01 логин: admin pass:123456, перенести все файлы с папок данного сервера:
    /01/report/
    /02/report/
    /03/report/ и.т.д. в папку С:\REPORT
    Заранее спасибо!

    Всего записей: 251 | Зарегистр. 10-05-2009 | Отправлено: 18:34 21-08-2010 | Исправлено: Seryoga204, 18:35 21-08-2010
    bomzzz



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

    Всего записей: 13343 | Зарегистр. 13-01-2008 | Отправлено: 18:42 21-08-2010
    powernic

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    я не нашел чтобы с ftp можно было делать условие (if,erorlevel)

    Всего записей: 14 | Зарегистр. 07-08-2010 | Отправлено: 18:47 21-08-2010 | Исправлено: powernic, 18:48 21-08-2010
    Seryoga204



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

    Всего записей: 251 | Зарегистр. 10-05-2009 | Отправлено: 18:48 21-08-2010
    bomzzz



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

    Всего записей: 13343 | Зарегистр. 13-01-2008 | Отправлено: 19:02 21-08-2010
       

    Страницы: 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 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199

    Компьютерный форум Ru.Board » Операционные системы » Microsoft Windows » Задачи на bat-файлах 8
    vu1tur (04-09-2010 17:46): http://forum.ru-board.com/topic.cgi?forum=62&topic=21297


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

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

    BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

    Рейтинг.ru