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

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

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

KLASS (06-03-2018 00:44): Объединение тем по сценариям: Сценарии Windows
 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 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

   

hErAx

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

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

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

  • Отправлено: 01:53 25-10-2015 | Исправлено: Paromshick, 21:51 18-12-2017
    NvvLazyTiger



    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Привет, Deoptimizer.
     
    У меня повсеместно подобное делается примерно вот так:
     

    Код:
    set errInf=
    for %%Q in ( %dirS%%authID%.??????.7z ) do if NOT defined errInf call :chkOld7 %%Q
    if defined errInf goto errExit
     

    Т.е. вызванная внутренняя или внешняя п/п устанавливает  в переменной errInf описание проблемы.
    А сама переменная используется в т.ч. и как флаг для п/п.
     
    ---
    Удачи!
    Влад.

    Всего записей: 257 | Зарегистр. 14-02-2009 | Отправлено: 13:00 12-02-2018
    vmix



    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Deoptimizer
    [q][/q]
     
    Попробуйте так:
    ---
    @echo off  
    TITLE start.cmd  
    color 2e  
    cls  
    echo start.cmd running...  
    echo Please Insert USB Drive (with NT6iso) and press any key  
    pause  
    FOR %%i IN (C D E F G H I J K L N M O P Q R S T U V W X Y Z) DO IF EXIST %%i:\NT6iso\instiso.cmd call:iso %%i
    pause
    exit
    :iso disk
    echo call %1:\NT6iso\instiso.cmd
    call %1:\NT6iso\instiso.cmd
    exit/b0
    ---
    На заметку:
    никогда не пишите  
    set start=
    только
    set "start="
     
    Удачи!

    Всего записей: 162 | Зарегистр. 22-10-2002 | Отправлено: 14:35 12-02-2018
    Deoptimizer

    BANNED
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    vmix
    Спасибо добавил цикл, теперь переменная устанавливается, но проблема теперь такая:

    Цитата:
    X:\windows\system32>FOR %i IN (C D E F G H I J K L N M O P Q R S T U V W X Y Z)
    DO IF EXIST %i:\NT6iso\instiso.cmd call:iso %i
     
    X:\windows\system32>IF EXIST C:\NT6iso\instiso.cmd call:iso C
     
    X:\windows\system32>IF EXIST D:\NT6iso\instiso.cmd call:iso D
     
    X:\windows\system32>echo call "\NT6iso\instiso.cmd"
    call "\NT6iso\instiso.cmd"
     
    X:\windows\system32>pause
    Press any key to continue . . .
     
    X:\windows\system32>call "\NT6iso\instiso.cmd"
    The system cannot find the path specified.
     
    X:\windows\system32>set "doExit=1"
     
    X:\windows\system32>pause
    Press any key to continue . . .

     
    Код:

    Код:
    TITLE start.cmd
    color 2e
    @echo on
    set "doExit="
    :try_again
    cls
    echo start.cmd running...
    echo Please Insert USB Drive (with NT6iso) and press any key
    pause
    FOR %%i IN (C D E F G H I J K L N M O P Q R S T U V W X Y Z) DO IF EXIST %%i:\NT6iso\instiso.cmd call:iso %%i
    if NOT defined doExit goto try_again
    exit
    :iso disk
    echo call "%i:\NT6iso\instiso.cmd"
    pause
    call "%i:\NT6iso\instiso.cmd"
    set "doExit=1"
    pause
    exit /b 0

     
    Добавлено:
    Пробовал и такой вариант "%%i" , также без кавычек, результат тот же...

    Всего записей: 315 | Зарегистр. 12-06-2015 | Отправлено: 16:13 12-02-2018 | Исправлено: Deoptimizer, 16:14 12-02-2018
    NIKZZZZ



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Deoptimizer
     
    call "%1:\NT6iso\instiso.cmd"  

    Всего записей: 5365 | Зарегистр. 08-02-2006 | Отправлено: 16:21 12-02-2018
    Deoptimizer

    BANNED
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    NIKZZZZ
    Да, заработало, спасибо.

    Всего записей: 315 | Зарегистр. 12-06-2015 | Отправлено: 16:27 12-02-2018
    prav333dorub



    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Подскажите знающие есть батник для создания точки восстановления
    на Win10 1607 работает на 1709 ни как
     
    @Echo Off
    PowerShell Checkpoint-Computer -Description "Restore_%date%" 2>nul 1>&2
    TIMEOUT /T 5 >nul
    exit
     
    в чем соль?

    Всего записей: 371 | Зарегистр. 22-12-2014 | Отправлено: 20:41 13-02-2018
    Pasha_ZZZ



    Platinum Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    prav333dorub
    А так
    Цитата:
    wmic /Namespace:\\root\default Path SystemRestore Call CreateRestorePoint "Restore_%date%", 100, 12

    Всего записей: 12398 | Зарегистр. 11-03-2002 | Отправлено: 20:54 13-02-2018
    prav333dorub



    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Pasha_ZZZ
    Тоже не хочет(открывает на мгновение cmd и на этом все)

    Всего записей: 371 | Зарегистр. 22-12-2014 | Отправлено: 21:03 13-02-2018
    farag



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    prav333dorub
    https://winaero.com/blog/restore-point-windows-10-powershell/

    Всего записей: 2477 | Зарегистр. 27-07-2009 | Отправлено: 21:06 13-02-2018
    prav333dorub



    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    farag
    Тоже не помогло
     
    \Checkpoint-Computer : Имя "\Checkpoint-Computer" не распознано как имя командлета, функции, файла сценария или выполня
    емой программы. Проверьте правильность написания имени, а также наличие и правильность пути, после чего повторите попыт
    ку.
    строка:1 знак:1
    + \`Checkpoint-Computer -Description RestorePoint1 -RestorePointType MO ...
    + ~~~~~~~~~~~~~~~~~~~~~
        + CategoryInfo          : ObjectNotFound: (\Checkpoint-Computer:String) [], CommandNotFoundException

    Всего записей: 371 | Зарегистр. 22-12-2014 | Отправлено: 21:28 13-02-2018 | Исправлено: prav333dorub, 21:31 13-02-2018
    farag



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    prav333dorub
    Почему перед командой стоит слэш? Дома покумекаю уже конкретно надо вопросом.

    Всего записей: 2477 | Зарегистр. 27-07-2009 | Отправлено: 12:34 14-02-2018
    prav333dorub



    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    farag
    Да не плохо было бы а то на 1709 ни один батник(для точек сохранения)не работает.

    Всего записей: 371 | Зарегистр. 22-12-2014 | Отправлено: 21:12 14-02-2018
    Pasha_ZZZ



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

    Всего записей: 12398 | Зарегистр. 11-03-2002 | Отправлено: 21:20 14-02-2018
    immotus



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Есть у кого готовый файл по выборочному переносу профильных папок пользователя Windows?
    Только чтобы все корректно с сохранением псевдонимов.

    Всего записей: 1440 | Зарегистр. 27-07-2007 | Отправлено: 00:24 15-02-2018
    vasyosuol_24

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

    Цитата:
    Есть у кого готовый файл по выборочному переносу профильных папок пользователя Windows?
    Только чтобы все корректно с сохранением псевдонимов.

    А такое ВООБЩЕ ВОЗМОЖНО?
    И не уточнена ОС (Windows), а от этого многое зависит...

    Всего записей: 1101 | Зарегистр. 16-01-2013 | Отправлено: 09:36 15-02-2018
    immotus



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    vasyosuol_24
    Естественно. Особой разницы в версии ОС нет. Код все тот же, которым переносился "Рабочий стол" на Windows XP.
    Код:
    mkdir D:\User\Desktop
    xcopy "%UserProfile%\ђ Ў®зЁ© бв®«" D:\User\Desktop /s/e/y
    REG ADD "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" /v Desktop /t REG_SZ /d "D:\User\Desktop" /f
    REG ADD "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders" /v Desktop /t REG_EXPAND_SZ /d "D:\User\Desktop" /f
    Только чего-то вот с псевдонимами он не дружит. Надо чего-то подкорректировать. Так-то задолбало, каждую папку вручную переносить.

    Всего записей: 1440 | Зарегистр. 27-07-2007 | Отправлено: 13:08 15-02-2018 | Исправлено: immotus, 17:18 15-02-2018
    bomzz

    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    извиняюсь за наглость, настолько редко пишу батники, что опять все из головы повылетало.
    никто не напишет очень полезный батник для работы с VCF файлами, контактами телефона.
    все программы для работы с ними платные, приходится делать в ручную.
    из за несовместимости работы с контактами телефонов Sony и Samsung,
    постоянно приходится делить полную телефонную книгу на части,
    для синхронизации и переноса контактов с Sony на Samsung.
    вот батник бы делил книгу на куски с заданным количеством контактов.

    Цитата:
    BEGIN:VCARD
    VERSION:2.1
    N;CHARSET=UTF-8;ENCODING=QUOTED-PRINTABLE:=D0=90=
    FN;CHARSET=UTF-8;ENCODING=QUOTED-PRINTABLE:=D0=90=
    TEL;CELL:+102
    TEL;WORK:
    X-IRMC-LUID:
    END:VCARD
    ..................
    BEGIN:VCARD
    VERSION:2.1
    N;CHARSET=UTF-8;ENCODING=QUOTED-PRINTABLE:
    FN;CHARSET=UTF-8;ENCODING=QUOTED-PRINTABLE:
    TEL;CELL:
    TEL;WORK:
    X-IRMC-LUID:
    END:VCARD

    начинается контакт стандартной строкой BEGIN:VCARD заканчивается END:VCARD.
    все в формате ANSI. вроде просто а проги нормальной нету.
    полный набор служебных знаков. между строками может быть разное количество строк,
    телефонов, е-маилов. то есть собака тоже может быть
     
    Добавлено:
    Sony передает через блютус контакты кучей. Samsung передает кучей по одному,
    принимает единую книгу только если в ней контактов не больше чем.
    вот экспортируешь на комп всю книгу с Sony, потом режешь,
    мне на 10 кусков приходится, и по одному - блютус на компе только по одному за раз,
    на Samsung. даже если бы я все это сделал, у меня бы батник получился кривой хромой

    Всего записей: 3412 | Зарегистр. 29-03-2016 | Отправлено: 06:44 17-02-2018 | Исправлено: bomzz, 07:00 17-02-2018
    Pasha_ZZZ



    Platinum Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    bomzz
    Бесплатная - https://sourceforge.net/projects/vcfsplitter/
    Онлайн - https://thewebvendor.com/online-vcf-splitter.html

    Всего записей: 12398 | Зарегистр. 11-03-2002 | Отправлено: 08:18 17-02-2018
    YuS_2



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    bomzz
    Многобукафф, а что требуется в итоге так и непонятно...
    Если разбить единый файл со всеми контактами на отдельные файлы, то вот скрипт на powershell:
    Батник для запуска:
    run.bat

    Код:
    @echo off
    echo Выполняем...
    powershell -ex bypass .\script.ps1
    echo Готово.
    pause

     
    сам скрипт:
    script.ps1

    Код:
    $enc=[text.encoding]::getencoding("utf-8")
    $tmp = new-object io.streamreader("contacts.vcf", $enc)
    $cnt = 1
    while(($str = $tmp.readline()) -ne $null){
        ac $cnt".vcf" -val $str -enc utf8
        if($str -eq "END:VCARD"){$cnt++}
    }
    $tmp.close()





    Часто про повершелл уже перебор.

    Всего записей: 3218 | Зарегистр. 03-02-2009 | Отправлено: 08:56 17-02-2018 | Исправлено: KLASS, 09:53 17-02-2018
    Pasha_ZZZ



    Platinum Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    YuS_2
    Хватит уже может форсить это унылое тормозное поделие. Ничего, что по нему отдельный топик в наличии?
    Powershell




    Модератор в разделе есть

    Всего записей: 12398 | Зарегистр. 11-03-2002 | Отправлено: 09:33 17-02-2018 | Исправлено: KLASS, 09:52 17-02-2018
       

    Страницы: 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

    Компьютерный форум Ru.Board » Операционные системы » Microsoft Windows » Задачи на bat-файлах 12
    KLASS (06-03-2018 00:44): Объединение тем по сценариям: Сценарии Windows


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

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

    BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

    Рейтинг.ru