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

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

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

vu1tur (11-09-2007 15:22): продолжаем в теме Задачи на bat-файлах 4  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 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

   

vu1tur



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

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

  • Всего записей: 3690 | Зарегистр. 01-02-2003 | Отправлено: 11:54 27-04-2007 | Исправлено: Elroir, 03:59 10-09-2007
    Elroir



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    timex
    Странно - я проверял на Win98 SE - батник работал без проблем.
    Концевые пробелы в скопированном коде удалил?
     
    Добавлено:
    А... Ты же не туда положил батник.
    В строчке "set source=c:\test" указывается директория с оригинальными файлами, а в строчке "set backup=d:\test" указывается директория бекапа. Батник должен лежать на том же диске, что и бекап.  


    ----------
    "В интернете есть все, но не всегда"

    Всего записей: 2631 | Зарегистр. 05-02-2003 | Отправлено: 12:57 09-08-2007
    oie71

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Я тут писал о том, что не до конца отрабатывает батник
    http://forum.ru-board.com/postings.cgi?action=edit&forum=62&topic=10650&postno=1425
     
    нашёл место "вывала" :
    когда запускается ftp или wget из батника через 30сек батник вылетает.
    при этом фтп НОРМАЛЬНО докачивает файл!
     
    это всё при логофе юзера от чьего имени работает шедулер (пробовал System - та же песня)
     
    пробовал ftp вызывать через call ftp.cmd - вылетает call.cmd и управление в основной батник не возвращается. При этом фтп НОРМАЛЬНО докачивает файл!
     
    Чем отличается среда запуска "логофф" и "логон" юзера, владельца задания?
    смотрел переменные SET - в "логофф" и "логон" одинаково во время выполнения задания.

    Всего записей: 66 | Зарегистр. 09-08-2006 | Отправлено: 17:13 09-08-2007
    JohnRD

    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    KapralBel
    спасибо большое за предыдушую помощь все отлично работает
     
    подскажите пожалуйста кто знает:
    прочитал в шапке Администрирование, автоматизация и сеть »· Запуск bat файлов как сервис, с помощью этих прграм..
    C:\Program Files\Resource Kit\Instsrv.exe C:\Program Files\Resource Kit\Srvany.exe
     
    весь смысл сводиться в следующем
     
    instsrv.exe %service% srvany.exe
    reg add HKLM\SYSTEM\CurrentControlSet\Services\%service%\Parameters /v Application /t REG_SZ /d %service%.cmd /f
    net start %service%
     
    и вот вопрос: если запускать cmd с одной строкой то все запускается и работает. типа

    Код:
     
    GhostSrv.exe d:\new\test.gho restore -N1 -R
     

    если же с несколькими строками , с FOR, с метками то запускаться - запускается - жрет 25% CPU и не работает  
    в чем проблема и как решить
     
    как раз Ваш cmd KapralBel спасибо огромное еще раз  
     

    Код:
     
    @Echo Off
    :LOOP
    Set num=1
    For /L %%a In (1,1,111) Do Call :EX %%a
    Set NewFile=backup%num%.gho  
    Echo %NewFile%
    GhostSrv.exe e:\backup\%NewFile% backup -D -C
    GoTo :LOOP
     
    :EX
    Set nu=000%1
    Set nu=%nu:~-3%
    If Not %Num%==1 GoTo :EOF
    If Exist e:\backup\backup%nu%.gho GoTo :EOF
    Set num=%nu%
    GoTo :EOF
     

     
    запускаются от LocalSystem
     
    необходимо запустить на сервере
    спасибо

    Всего записей: 205 | Зарегистр. 29-08-2004 | Отправлено: 17:49 09-08-2007 | Исправлено: JohnRD, 18:06 09-08-2007
    KapralBel



    Platinum Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    JohnRD
    А батничек сам без службы - отрабатывает?

    Всего записей: 11354 | Зарегистр. 16-02-2005 | Отправлено: 17:59 09-08-2007
    JohnRD

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

    Всего записей: 205 | Зарегистр. 29-08-2004 | Отправлено: 18:07 09-08-2007
    KapralBel



    Platinum Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    JohnRD
    1. Закоментируй строку
     GhostSrv.exe e:\backup\%NewFile% backup -D -C
    Работает?
     
    2. Запускай от имени админа

    Всего записей: 11354 | Зарегистр. 16-02-2005 | Отправлено: 18:10 09-08-2007
    JohnRD

    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    KapralBel
     
    закоментировал жрет столько же 25% но проверить не могу поскольку заремарил как раз то что должно работать
     
    запустил от имени админа тоже самое
     
    в той статье есть следующее
     
    Аннотация  
    В состав набора Windows NT Resource Kit входят две служебные программы, позволяющие создавать определяемую пользователем службу Windows NT для приложений Windows NT и некоторых 16-разрядных приложений (но не для пакетных файлов).
     

    Всего записей: 205 | Зарегистр. 29-08-2004 | Отправлено: 18:23 09-08-2007 | Исправлено: JohnRD, 18:27 09-08-2007
    KapralBel



    Platinum Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    JohnRD
    В исходном варианте программа запускается (по дсп.задач)?
     
    Вставляй вывод в файл, для проверки на каком этапе порется
     
    Добавлено:
    А что именно жрет память - cmd.exe?

    Всего записей: 11354 | Зарегистр. 16-02-2005 | Отправлено: 18:26 09-08-2007
    JohnRD

    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    KapralBel
     
    как выяснилось первый батник(с одной строкой) тоже не запускается как сервис,  
    работает только если в чистом виде вписать саму комманду
    reg add HKLM\SYSTEM\CurrentControlSet\Services\%service%\Parameters /v Application /t REG_SZ /d "GhostSrv.exe d:\new\test.gho restore -N1 -R" /f
    тогда в диспетчере задач появляется GhostSrv.exe так же как запустить сам батник.
     
    во втором случает висит только cmd.exe и жрет 25% и GhostSrv.exe вобще нет
    ну и еще висят Srvany.exe
     
    как еще можно попытаться запустить cmd как сервс

    Всего записей: 205 | Зарегистр. 29-08-2004 | Отправлено: 08:01 10-08-2007
    KapralBel



    Platinum Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    JohnRD
    А смысл именно в данном случае как сервис
    Шедулером - раз в сутки
    Все равно - зациклен до ручного прерывания или перезагрузки

    Всего записей: 11354 | Зарегистр. 16-02-2005 | Отправлено: 08:05 10-08-2007
    dardreams



    Junior Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    Привет великим знатокам !!!
    Подскажите как сделать чтобы консоль читала русские буквы  
    пример...

    Код:
     
    echo off
    chcp 1251>nul
    setlocal enabledelayedexpansion  
    for /f "tokens=*" %%a in (temp.txt) do (
    set "count=0"  
    set "text=%%a"  
    call :show)
     
    goto :EOF                                  
     
    :show  
    if "!text:~%count%,1!"=="" (Echo. &set /a x=%x%+1&goto :EOF)  
     
    hs_echo "!text:~%count%,1!"  
     
    set /a "count+=1"  
     
    goto show
     

    Мне этот код здесь дали... Он работает но только выводит латинские буквы...
     
     
    Добавлено:
    Если в temp.txt буквы русские, он выводит крякозябры

    Всего записей: 100 | Зарегистр. 29-05-2007 | Отправлено: 08:05 10-08-2007
    01MDM



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    dardreams
    закоментируй строку chcp 1251 >nul

    Всего записей: 2638 | Зарегистр. 13-02-2006 | Отправлено: 08:09 10-08-2007
    KapralBel



    Platinum Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    dardreams
    1. Проблема с утилитой
    Цитата:
    hs_echo

    2. Текст в temp.txt в ANSI кодировке

    Всего записей: 11354 | Зарегистр. 16-02-2005 | Отправлено: 08:10 10-08-2007
    dardreams



    Junior Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    01MDM Нет не помагает
     
    Добавлено:
    KapralBel да он в ANSI кодировке, я попробовал поставить просто ECHO тоже самое даже с закоментированной строкой
     
     
    Добавлено:
    Так есть ли способ выводить русские буквы в Ansi кодировке ?

    Всего записей: 100 | Зарегистр. 29-05-2007 | Отправлено: 08:12 10-08-2007
    KapralBel



    Platinum Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    dardreams
    Пардон
    Текст в ОЕМ-866 а не в ANSI-1251
     
    С этой утилитой нельзя если не приводить текст к ANSI кодировке

    Всего записей: 11354 | Зарегистр. 16-02-2005 | Отправлено: 08:33 10-08-2007
    dardreams



    Junior Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    Нет текст именно в ANSI и я же говорю что даже стандртный ECHO не работает

    Всего записей: 100 | Зарегистр. 29-05-2007 | Отправлено: 08:39 10-08-2007
    KapralBel



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

    Всего записей: 11354 | Зарегистр. 16-02-2005 | Отправлено: 09:41 10-08-2007
    slayer120



    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Подскажите плиз вот такой код  
    xcopy /i %%o h:\arch\%%u\archiv1.bkf /Y /F /Z
     
    запрашивает , что такое archiv1.bkf - файл или траектория  
    (если такой файл уже есть  в каталоге приемника - все ОК.)
     
    Как бы избавится от этого запроса?
       

    Всего записей: 303 | Зарегистр. 24-01-2007 | Отправлено: 09:42 10-08-2007 | Исправлено: slayer120, 09:44 10-08-2007
    VASTERIKS

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

    Всего записей: 9 | Зарегистр. 10-05-2007 | Отправлено: 10:10 10-08-2007
    dardreams



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

    Цитата:
    Выложи на файлообменник текст

    А как это сделать ?

    Всего записей: 100 | Зарегистр. 29-05-2007 | Отправлено: 10:17 10-08-2007
       

    Страницы: 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-файлах 3
    vu1tur (11-09-2007 15:22): продолжаем в теме Задачи на bat-файлах 4


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

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

    BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

    Рейтинг.ru