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

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

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

vu1tur (26-05-2009 11:39): часть 7 — http://forum.ru-board.com/topic.cgi?forum=62&topic=17154#1  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 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

   

vu1tur



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

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

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





    http://forum.ru-board.com/topic.cgi?forum=62&topic=17154

  • Всего записей: 3690 | Зарегистр. 01-02-2003 | Отправлено: 23:07 04-11-2008 | Исправлено: vu1tur, 11:38 26-05-2009
    NovaC

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    есть ли возможность в cmd выводить мигающий текст
    т.е. по аналогии с echo ... только что-бы мигал

    Всего записей: 95 | Зарегистр. 09-01-2008 | Отправлено: 06:37 14-04-2009
    Maza_Faka



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

    Цитата:
    Батником можно так:

    А если строка будет содержать символ ! ?
     
    strat
    1.

    Код:
     
    @Echo Off
     
    For /F "Tokens=*" %%A In (test.txt) Do Call :Parcing "%%A"
    GoTo :EOF
     
    :Parcing
    Set Str=%~1
    echo %str: =%>>result.txt
     

     
    2.
    Если строки не содержат пробелов, кроме концевых, то можно проще:

    Код:
     
    @Echo Off
     
    For /F %%A In (test.txt) Do Echo %%A>>result.txt
     

    Всего записей: 1420 | Зарегистр. 25-10-2006 | Отправлено: 08:24 14-04-2009 | Исправлено: Maza_Faka, 08:25 14-04-2009
    vu1tur



    Moderator-Saaber
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    batniki

    Цитата:
    Как сделать что-то типа этого %s%%b%% есть переменная s24 которая содержит текст, чтобы её вывести

    а по-русски?

    ----------
    I am free of all prejudice. I hate everyone equally.

    Всего записей: 3690 | Зарегистр. 01-02-2003 | Отправлено: 10:12 14-04-2009
    strat

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

    Всего записей: 459 | Зарегистр. 27-12-2005 | Отправлено: 10:47 14-04-2009
    Collapse_Troll

    Advanced Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    Здравствуйте!  
     
    Часто работаю в remote desktop, хочу чтобы по ярлычку выполнялась команда logoff. Если пишу logoff в Start -> Run - все хорошо. Однако если пишу "logoff" в cmd-шнике - он зацикливается. Попробовал "start logoff" - завесил машину(начали открываться бесчисленные окошки cmd). Как отлогофиться в cmd-шнике?

    Всего записей: 791 | Зарегистр. 05-08-2006 | Отправлено: 12:13 14-04-2009
    01MDM



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

    Всего записей: 2638 | Зарегистр. 13-02-2006 | Отправлено: 12:18 14-04-2009
    Collapse_Troll

    Advanced Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    01MDM
    Пхахаха ) Респект, спасибо!

    Всего записей: 791 | Зарегистр. 05-08-2006 | Отправлено: 13:48 14-04-2009
    greenfox



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    как удалить из папки все файлы и каталоги? del и rmdir по отдельности этого вроде не позволяют... Есть отдельные скрипты вида:

    Цитата:
    @echo off
    setlocal enableextensions enabledelayedexpansion
     
    if exist "%~1" (
        echo Clearing folders in [%~1].
        pushd "%~1" && (rmdir /s /q "%~1" & popd) 2>nul
    ) else (
        echo Not found [%~1]
    )
     
    endlocal
    exit /b 0
    но может есть более простой вариант одной командой?

    ----------
    Три вещи вечны: смерть, налоги и потеря данных...

    Всего записей: 4139 | Зарегистр. 29-07-2003 | Отправлено: 16:46 14-04-2009
    strat

    Full Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    deltree может удалять дерево каталогов  независимо от содержимого
     
    упс, посмотрел, из винды xp эту команду уже убрали, в досе была

    Всего записей: 459 | Зарегистр. 27-12-2005 | Отправлено: 17:14 14-04-2009 | Исправлено: strat, 17:18 14-04-2009
    Maza_Faka



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

    Цитата:
    как удалить из папки все файлы и каталоги?


    Код:
     
    @Echo Off
     
    Set MyFolder=E:\Temp
     
    CD /D %MyFolder%
    RD /S /Q %MyFolder%
     

    Всего записей: 1420 | Зарегистр. 25-10-2006 | Отправлено: 17:21 14-04-2009
    Mr_Hat



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

    Код:
    RMDIR /S /Q диск:путь
    RD /S /Q диск:путь
     
        /S      Удаление дерева каталогов, т. е. не только указанного каталога,
                но и всех содержащихся в нем файлов и подкаталогов.
     
        /Q      Отключение запроса подтверждения при удалении дерева каталогов
                с помощью ключа /S.

    не пойму в чем проблемма ?

    Всего записей: 984 | Зарегистр. 04-10-2005 | Отправлено: 17:24 14-04-2009
    DRabc

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Help me своять батник.
     
    Есть путь c:\log\%date\%date_title.log
     
    %date - время когда создавалась папка и сам лог
    title - всегда определённое имя, никогда не меняться.
     
    Папка %date всегда одна, в ней несколько файлов: %date_title.log %date_title1.log %date_title2.log
     
    Как получить строку, в которой был бы полный путь, что бы работать с этим файлом.

    Всего записей: 13 | Зарегистр. 23-12-2007 | Отправлено: 20:17 14-04-2009 | Исправлено: DRabc, 20:22 14-04-2009
    sas1111



    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    .
     
    Специалисты.!!!. Кто-либо  знает про   чтение  
    нескольких Байт с файла (см.на73,74) и запись туда...  
       
         Неуж-то нет вариантов ...  Подскажите.!.  
     
     ..Завис в ожидании..Уповая на Вашу квалификацию..
      Киньте примерчика..
     
    .  
           

    Всего записей: 7 | Зарегистр. 12-04-2009 | Отправлено: 20:44 14-04-2009
    NovaC

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

    Всего записей: 95 | Зарегистр. 09-01-2008 | Отправлено: 04:28 15-04-2009
    Maza_Faka



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

    Код:
     
    @Echo Off
     
    For /F "Tokens=*" %%A In ('Dir c:\log\*_title.log /B /S') Do Set fPath=%%A
     
    Echo %fPath%
     

     
    Добавлено:
    sas1111

    Цитата:
    чтение  
    нескольких Байт с файла

    Возможно команда Debug поможет вам?

    Всего записей: 1420 | Зарегистр. 25-10-2006 | Отправлено: 08:05 15-04-2009
    AnGo



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

    Цитата:
    echo Working >> mes.log
    echo %TIME% >> mes/log  

    тоже виснет. По-крайней мере вывод в файл прекращается приблизительно через 20 часов работы.
    Даже до суток не дотягивает.
    Размер лога всего 6 КБайт. Ума не приложу на какое ограничение или косяк в WinXP HOME я наткнулся.
    Будем искать другие пути.
     

    Всего записей: 1078 | Зарегистр. 07-07-2002 | Отправлено: 08:58 15-04-2009
    strat

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

    Цитата:
    вывод мигающего текста из cmd

     
    я ждал, думал кто ответит, собственно это невозможно обычным способом.
     
    приходит на ум единственный теоретический путь - вывод сообщения, очистка экрана, через паузу вывод сообщения, думаю это будет выглядеть не очень...

    Всего записей: 459 | Зарегистр. 27-12-2005 | Отправлено: 09:17 15-04-2009
    01MDM



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    NovaC
     
    CMD.EXE не поддерживает ansi. Почему от этого отказались мне не понятно. Можно использовать костыли для красоты. Например ansicon.exe. Но он тоже не может blinking.

    Всего записей: 2638 | Зарегистр. 13-02-2006 | Отправлено: 09:24 15-04-2009 | Исправлено: 01MDM, 09:28 15-04-2009
    sas1111



    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Maza_Faka  спасибо что услышан.!
     
    Цитата:чтение    
    нескольких Байт с файла  
     
    Возможно команда Debug поможет вам?
     
    Maza_Faka, а  можно попросить вас хоть что-то поконкретнее..  плз
     

    Всего записей: 7 | Зарегистр. 12-04-2009 | Отправлено: 11:50 15-04-2009
    Mr_Hat



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    strat
    Полагаю что весь вопрос в том что бы на текст в в окне обратили внимание.
    Вариант с очисткой экрана не плох, но если текст тот же,
    можно просто менять цветовую гамму окна и текста.
    Но тут уже нужен временной таймер или задержка по ping localhost

    Всего записей: 984 | Зарегистр. 04-10-2005 | Отправлено: 13:42 15-04-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

    Компьютерный форум Ru.Board » Операционные системы » Microsoft Windows » Задачи на bat-файлах 6
    vu1tur (26-05-2009 11:39): часть 7 — http://forum.ru-board.com/topic.cgi?forum=62&topic=17154#1


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

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

    BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

    Рейтинг.ru