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

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

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

vu1tur (09-01-2011 11:53): лимит страниц, продолжение — http://forum.ru-board.com/topic.cgi?forum=62&topic=22143  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 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

   

vu1tur



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

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

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

  • Всего записей: 3690 | Зарегистр. 01-02-2003 | Отправлено: 17:45 04-09-2010 | Исправлено: Accessor, 18:04 28-09-2010
    abz



    Хулиган
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Скажите, как из командной строки запустить ждущий (не спящий!) режим на win7? Это вообще возможно? Shutdown.exe позволяет использовать только спящий режим!
     
    Добавлено:
    rundll32 kernel32,SetSystemPowerState срабатывает только через Пуск - Выполнить. Из cmd и bat файла не работает!

    Всего записей: 14975 | Зарегистр. 04-11-2002 | Отправлено: 23:27 17-12-2010
    sounknow



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

    Всего записей: 35 | Зарегистр. 15-10-2010 | Отправлено: 00:45 18-12-2010
    Eugeny_S



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

    Всего записей: 56 | Зарегистр. 24-12-2005 | Отправлено: 00:47 18-12-2010
    01MDM



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    abz
    На 7-ке не могу проверить, а в XP похоже не работает. Попробуй (за точность синтаксиса не отвечаю):

    Код:
     
    wmic path win32_ComputerSystem call /?:full
    wmic path win32_ComputerSystem call SetPowerState PowerState=3 Time=0
     

    Или PowerShell:

    Код:
     
    (Get-WmiObject -class Win32_ComputerSystem).SetPowerState(3,"0")
     

     
    Если не обязательно встроенными средствами, то можно с помощью утилит psshutdown.exe или nircmd.exe:

    Код:
     
    psshutdown -d -f -t 0
    nircmdc standby force
     



    ----------
    Вопросы в личке останутся без ответа

    Всего записей: 2638 | Зарегистр. 13-02-2006 | Отправлено: 01:08 18-12-2010 | Исправлено: 01MDM, 01:10 18-12-2010
    abz



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

    Цитата:
    win7 использует гибридный спящий режим. Попробуй его отключить в панели управления.

    Разумеется он отключён!
     
     
    01MDM

    Цитата:
    На 7-ке не могу проверить, а в XP похоже не работает. Попробуй (за точность синтаксиса не отвечаю):  
     
    Код:  
    wmic path win32_ComputerSystem call /?:full  
    wmic path win32_ComputerSystem call SetPowerState PowerState=3 Time=0  
     
     
    Или PowerShell:  
     
    Код:  
    (Get-WmiObject -class Win32_ComputerSystem).SetPowerState(3,"0")  
     

    Первый вариант выводит это:

    Код:
    C:\>wmic path win32_ComputerSystem call /?:full
     
    Method execution operations.
    USAGE:
     
    CALL <method name> [<actual paramlist>]
    NOTE: <actual paramlist> ::= <actual param> | <actual param>,  <actual paramlist
    >
     
    The following verb(s)/method(s) are available:
     
    Call                    [ In/Out ]Params&type                   Status
    ====                    =====================                   ======
    JoinDomainOrWorkgroup   [IN ]AccountOU(string)                  Implemented
     
                            [IN ]FJoinOptions(uint32)
     
                            [IN ]Name(string)
     
                            [IN ]Password(string)
     
                            [IN ]UserName(string)
     
                            [OUT]ReturnValue(uint32)
    Press any key to continue, or press the ESCAPE key to stop
     
     
    Второй вариант тоже не работает:

    Код:
    C:\>"!2010.12.18_2.07.52.cmd"
    Непредвиденное появление: .SetPowerState(3.
     
    C:\>(Get-WmiObject -class Win32_ComputerSystem).SetPowerState(3,"0")
    C:\>
     
     
     
    Про сторонние утилиты всё понятно, но не хотелось бы их использовать...

    Всего записей: 14975 | Зарегистр. 04-11-2002 | Отправлено: 02:15 18-12-2010
    Rush

    Уже за тридцать...
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    SetPowerState

    на msdn написано:

    Цитата:
    This method is currently not implemented by WMI

     
    Добавлено:

    Цитата:
    z:\>wmic path CIM_UnitaryComputerSystem call SetPowerState
    ОШИБКА:
    Код = 0x80041055
    Описание = Этот метод не реализован ни в одном из классов
    Услуга = WMI

    Вот такие пироги.

    Всего записей: 3551 | Зарегистр. 20-11-2003 | Отправлено: 04:41 18-12-2010
    superman md



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Помогите сделать батник. SetupComplete.cmd для автоматизации ввода серийника в Windows 7.
     
    Нужно примерно такое-
    Если установлена Максимальная - cscript %windir%\system32\slmgr.vbs -ipk XXXXX-XXXXX-XXXXX-XXXXX-XXXXX (OEM ключ для максимальной)
    Если установлена Профессиональная - cscript %windir%\system32\slmgr.vbs -ipk XXXXX-XXXXX-XXXXX-XXXXX-XXXXX (OEM ключ для профессиональной)
    ну что то такое, для меня батники это тёмный лес. Может кто то сможет решить проблему...

    ----------
    Нахожусь в очень сложном финансовом положении.
    Буду очень благодарен, если у вас найдется для меня занятие, которое поможет мне хоть немного заработать на дому!

    Всего записей: 1205 | Зарегистр. 27-06-2010 | Отправлено: 13:03 18-12-2010
    VitGT

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

    Цитата:
    Есть такая команда которая копирует папку содержащую в конце имени P
     
    Код:
    set SDIRV=d:\2
    set DDIRV=d:\1
     
    for /d %%i in ("%SDIRV%\*P") do xcopy /s "%%i" "%DDIRV%\"  

    А если папка скрытая (системная) как теперь с нее всё скопировать ?

    Всего записей: 18 | Зарегистр. 12-07-2007 | Отправлено: 16:18 18-12-2010 | Исправлено: VitGT, 16:19 18-12-2010
    bomzzz



    Запрет на пост
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    у copy ключи для копирования системный файлов, у xcopy возможно тоже не помню точно
     
    xcopy /?
     
    можно атрибуты сменить у копируемого объекта а потом назад поставить

    Всего записей: 13343 | Зарегистр. 13-01-2008 | Отправлено: 16:24 18-12-2010
    VitGT

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

    Код:
    for /d %%i in ("d:\2\*P") do xcopy /s /y /h "%%i" "d:\1"

    Добавил атрибут /h, файлы не копируются, если к примеру папка qwerty.p не скрытая, то всё что в ней - копируется без проблем, а с скрытой чет не хочет, не знаю почему

    Всего записей: 18 | Зарегистр. 12-07-2007 | Отправлено: 16:53 18-12-2010 | Исправлено: VitGT, 16:57 18-12-2010
    sisss



    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Доброе время суток, В папке Test 2 файла:
    - 1.bat
    - "папка 1"
    1.bat Должен запустить ещё 1 батник из "папка 1", который содержит переменную %cd% - при её использовании указывается путь не батника в "папка 1" а путь батника который запускал всё это дело, то есть 1.bat. Как сделать так что бы учитывался путь батника из "папка 1"? Долго думал как написать эту чушь надеюсь вы поймёте.

    Всего записей: 29 | Зарегистр. 10-09-2010 | Отправлено: 17:23 18-12-2010
    Free_Soft



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

    Цитата:
    для автоматизации ввода серийника в Windows 7


    Код:
    REG QUERY "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion" /v ProductName | findstr /i ULTIMATE >nul
    IF NOT ERRORLEVEL 1 cscript %windir%\system32\slmgr.vbs -ipk XXXXX-XXXXX-XXXXX-XXXXX-XXXXX
    REG QUERY "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion" /v ProductName | findstr /i PROFESSIONAL >nul
    IF NOT ERRORLEVEL 1 cscript %windir%\system32\slmgr.vbs -ipk XXXXX-XXXXX-XXXXX-XXXXX-XXXXX

    Всего записей: 1536 | Зарегистр. 19-04-2010 | Отправлено: 17:30 18-12-2010
    01MDM



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

    Цитата:
    Добавил атрибут /h, файлы не копируются

    И не будут, т.к. цикл 'for /d' не видит этих файлов.

    Код:
     
    for /f "tokens=*" %%i in ('dir /b /ad "d:\2\*P"') do xcopy /e "%%~fi" "d:\1\"
     



    ----------
    Вопросы в личке останутся без ответа

    Всего записей: 2638 | Зарегистр. 13-02-2006 | Отправлено: 17:42 18-12-2010 | Исправлено: 01MDM, 18:45 18-12-2010
    VitGT

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

    Цитата:
    И не будут, т.к. цикл 'for /d' не видит этих файлов.
     
    Код:
     
    for /f "tokens=*" %%i in ('dir /b /ad "d:\2\*P"') do xcopy /e "%%~fi" "d:\1\"  

    Тоже не работает, даже если папка не скрытая

    Всего записей: 18 | Зарегистр. 12-07-2007 | Отправлено: 22:56 18-12-2010 | Исправлено: VitGT, 23:22 18-12-2010
    01MDM



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

    Код:
     
    @echo off
     
    pushd "d:\2\"
    for /f "tokens=*" %%i in ('dir /b /ad ".\*P"') do xcopy /e /y "%%i" "d:\1\%%i\"
    popd
     



    ----------
    Вопросы в личке останутся без ответа

    Всего записей: 2638 | Зарегистр. 13-02-2006 | Отправлено: 00:13 19-12-2010
    VitGT

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    01MDM
    Огромное спасибо Вам, то что нужно, всё работает как надо

    Всего записей: 18 | Зарегистр. 12-07-2007 | Отправлено: 01:00 19-12-2010
    zzzzz



    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Как удалить в текстовом файле данных строку, или две, содержащие имена полей.

    Всего записей: 161 | Зарегистр. 06-06-2002 | Отправлено: 15:35 19-12-2010
    sisss



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

    Всего записей: 29 | Зарегистр. 10-09-2010 | Отправлено: 16:02 19-12-2010
    slech



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

    Всего записей: 4893 | Зарегистр. 10-11-2004 | Отправлено: 18:06 19-12-2010
    serg3001



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    есть txt файл, в котором имеются такие строки,например,
    232:234234234:ABJ:452.47:
    432:234234234:redf:857.00:
    345:234234254:dsf:8.00:
    .......
    и т.д.
    мне известно, что какие-то из чисел, в последней колонке, в сумме дают, наример, 460.47,
    нужно среди таких строк найти слагаемые этой суммы.
    Очень надеюсь на помощь.
     

    Всего записей: 3823 | Зарегистр. 16-10-2010 | Отправлено: 19:40 20-12-2010 | Исправлено: serg3001, 19:42 20-12-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

    Компьютерный форум Ru.Board » Операционные системы » Microsoft Windows » Задачи на bat-файлах 9
    vu1tur (09-01-2011 11:53): лимит страниц, продолжение — http://forum.ru-board.com/topic.cgi?forum=62&topic=22143


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

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

    BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

    Рейтинг.ru