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

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

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

    Цитата:
    res2001

    Благодарю.
    А по вопросу постоянной перезагрузки ПК через батник не поможешь ?

    Всего записей: 17 | Зарегистр. 08-07-2010 | Отправлено: 12:30 28-07-2010
    res2001



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

    Цитата:
    А по вопросу постоянной перезагрузки ПК через батник не поможешь ?

    wolf0425 тебе уже ответил.
    Если что-то не понятно, то ставь задачу поконкретней.

    Всего записей: 2580 | Зарегистр. 11-04-2003 | Отправлено: 12:42 28-07-2010
    Xpomep

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

    Цитата:
    res2001

    дело в том что я нуб в этом деле и только начинаю осваивать цмд
    и мне не совсем понятно что за ключи shutdown . Почему и спрашиваю разъяснения !
    Вообще  возможно ли сделать через батник постоянный ребут пк ?

    Всего записей: 17 | Зарегистр. 08-07-2010 | Отправлено: 13:02 28-07-2010
    res2001



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

    Цитата:
    ключи shutdown

    дашь команду shutdown /? и будут тебе ключи с которыми ее можно запускать.

    Цитата:
    Вообще  возможно ли сделать через батник постоянный ребут пк ?

    Можно.
    Что ты понимаешь под постоянным ребутом? Загрузился и сразу ребутнулся? Пользователь должен заходить или можно и без него? Или может быть по расписанию? С какой периодичностью?

    Всего записей: 2580 | Зарегистр. 11-04-2003 | Отправлено: 13:38 28-07-2010
    Xpomep

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    "/?" - что выполняет эта команда ?
    надо сделать так чтоб комп как только загрузился , в течении 5 сек уходил на авто-ребут , и так зациклить .
    пока сделал так(bat) "shutdown -g -t 5" .

    Всего записей: 17 | Зарегистр. 08-07-2010 | Отправлено: 18:42 28-07-2010
    wolf0425



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    есть исходный текстовый файлик, в котором есть строки вида
    четотам"stringNNN"eщёчетотам
    string - это фиксированная подстрока, четотам - левый текст.
    NNN - тоже подстрока, но они бывают разные, причем в файлике дофига строк с совпадающими "stringNNN".
    задача - из входного сформировать файлик, где удалены все повторные "stringNNN" - т.е. остались строки каждого первого "stringNNN" и строки не попадающие в маску "string.*"
     
    скриптик sed'a поможет кто написать? или не седа...
     
    Добавлено:

    Цитата:
    "/?" - что выполняет эта команда ?  
    а самому запустить в консоли shutdown /? и посмотреть - совсем никак?
    команда хэлп печатает.

    Цитата:
    пока сделал так(bat) "shutdown -g -t 5" .
    и какая у тебя ОС? в смысле - ключик -g у твоего shutdown точно что-то делает?
     

    Цитата:
    надо сделать так чтоб комп как только загрузился , в течении 5 сек уходил на авто-ребут
    а в чем смысл таких перезагрузок? вредительство?
     
     
     
     

    Всего записей: 2929 | Зарегистр. 25-04-2007 | Отправлено: 18:52 28-07-2010
    Xpomep

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

    Цитата:
    и какая у тебя ОС? в смысле - ключик -g у твоего shutdown точно что-то делает?  

    7 ка , ключ делает перезагрузку после 20 сек включения ПК . Сделал для него инсталятор чтоб ставился в автозагрузку , только паливо получается путь на c:/и тд/... - а как скрыть путь я хз.
    Если есть более удобный вариант добавить батник в автозагрузку подскажите , через ветвь реестра например .
    Да смысл вредительство одному не хорошему челу .(единичный случай)!

    Всего записей: 17 | Зарегистр. 08-07-2010 | Отправлено: 19:46 28-07-2010
    wolf0425



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    так без батника положи в папку автостарта не батник, а просто ярлык на shutdown.  с ключиками, типа /f /r /t 5
    в момент запуска shutdown - закрывать его уже поздновато, успеть за 5 сек удалить ярлык - веселое развлечение на мышекликанье

    Всего записей: 2929 | Зарегистр. 25-04-2007 | Отправлено: 20:09 28-07-2010
    Xpomep

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

    Всего записей: 17 | Зарегистр. 08-07-2010 | Отправлено: 20:28 28-07-2010
    wolf0425



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

    Цитата:
    Положить в автозапуск вариант если имеешь доступ к компу , а я его имею частично !  
    доступ на запись в "%USERPROFILE%\Start Menu\Programs\Startup\" (или как там будет в русских виндах) у тебя точно есть, скопировать туда готовый ярлык не должно быть проблемой.
     

    Цитата:
    а вот если бы был вариант скрыто поставить файл в автозагрузку без указания пути или через ветвь реестра, то было бы шикарно.  
    да можно и  в реестр, добавляешь ключик в HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run
    что добавлять и как добавлять - ты все же хэлп почитай, или форум полистай
     
    а чем тебе указание пути помешало то?
    он же стандартный, %SystemRoot%\system32\shutdown.exe

    Всего записей: 2929 | Зарегистр. 25-04-2007 | Отправлено: 21:17 28-07-2010
    res2001



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

    Цитата:
    NNN - тоже подстрока

    У NNN фиксированная длина? Если да то сколько символов? Видимо 3
     
    Добавлено:

    Цитата:
    есть исходный текстовый файлик

    Файл большого размера? Сколько обычно разновидностей stringNNN?
    В string и NNN разделители могут быть?
     
    Добавлено:

    Цитата:
    или не седа

    Если файло не слишком большого размера и количество разных stringNNNов не велико я бы сделал через массив переменных.
    Находить вхождение stringов в строку можно с помощью операции замены в set'е, заменять на какой-либо символ разделитель, которого точно известно, что не будет в строке, затем в форе выделять NNNы после разделителя и генерить переменные.

    Всего записей: 2580 | Зарегистр. 11-04-2003 | Отправлено: 08:53 29-07-2010
    wolf0425



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

    Цитата:
    У NNN фиксированная длина
    нет, это текстовая строка вообще-то. конкретнее url
     

    Цитата:
    Файл большого размера?  
    мегабайта полтора был. ~12к строк. ~4к строк с string, ~2к уникальных
     
    в смысле - уже почистил.
    но делал через задницу и делалось медленно:
    1. составил файл-список SSS stringNNN где SSS - номер строки,  
    2. из него сгенерил пакетник для sed
    () do set /a line = %%a +1 & 1>>ttt.tmp echo !line!,$ { s;.*%%b.*$;;g }
    3. в пакетнике поменял специсимволы.
    4. засунул пакетник (~4к+ строк)  в сед и он поудалял строки. за пару минут.
    5. плагином фара прибил пустые строки  - над седом думать противно было.
     
    так что если кто подскажет как это делать попроще - велкам, а то через месяц надо будет повторять...

    Всего записей: 2929 | Зарегистр. 25-04-2007 | Отправлено: 14:12 29-07-2010 | Исправлено: wolf0425, 17:21 30-07-2010
    Free_Soft



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Кто подскажет как через консоль запросить значение системной переменной PATH и это значение потом ретранслировать в текстовый файл? заранее благодарен

    Всего записей: 1536 | Зарегистр. 19-04-2010 | Отправлено: 18:58 29-07-2010
    wolf0425



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Free_Soft ты бы хоть какой-нибдь хэлп по батникописанию почитал...
     
    1>file.txt echo.%path%

    Всего записей: 2929 | Зарегистр. 25-04-2007 | Отправлено: 19:05 29-07-2010
    Free_Soft



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

    Всего записей: 1536 | Зарегистр. 19-04-2010 | Отправлено: 19:08 29-07-2010
    Vitaly_Sigov

    Junior Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    Здравствуйте, уважаемые форумчане.
    Подскажите, пожалуйста, каким образом можно в bat файле определить имя текущего каталога в котором он находится ?
    Дабы не прописывать полный путь к каталогу в команде Cacls:
     
    cacls "\\Comp\DWG" /E /R Виталий

    Всего записей: 54 | Зарегистр. 23-01-2009 | Отправлено: 08:09 30-07-2010
    res2001



    Silver Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    Vitaly_Sigov
    Текущий каталог и каталог в котором находится бат файл разные вещи.
    Каталог батника:

    Код:
    echo %~dp0

    текущий каталог:

    Код:
    cd .

     
    Добавлено:
    В твоем случае видимо будет так:
    cacls "%~dp0DWG" /E /R Виталий

    Всего записей: 2580 | Зарегистр. 11-04-2003 | Отправлено: 08:26 30-07-2010 | Исправлено: res2001, 08:27 30-07-2010
    res2001



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

    Коллеги! Сегодня день сисадмина! Всех с праздником!
    ЗЫ: а у меня двойной праздник - завтра в отпуск

    Всего записей: 2580 | Зарегистр. 11-04-2003 | Отправлено: 13:54 30-07-2010
    ComradG



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    У кого есть идеи по поводу получения списка дисков тут? Я на счет оптимизации. А то фантазия уже не работает вовсе.

    Всего записей: 2041 | Зарегистр. 05-07-2008 | Отправлено: 18:25 30-07-2010
    NIKZZZZ



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

    Цитата:
    по поводу получения списка дисков


    Код:
    for /f "tokens=1* delims= " %%i in ('fsutil.exe fsinfo drives') do set drives=%%j
    for %%i in (%drives%) do echo %%i

    Всего записей: 5365 | Зарегистр. 08-02-2006 | Отправлено: 19:25 30-07-2010 | Исправлено: NIKZZZZ, 19:30 30-07-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