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

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

Модерирует : gyra, Maz

Widok (03-03-2010 16:29): Лимит страниц. Продолжаем здесь.  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 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

   

Widok



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

 
Важно: копируя батник через буфер обмена из форума не забывайте удалять пробелы в конце каждой строки, т.к. в некоторых случаях из-за этого программа будет работать неправильно!!!
 
Примечание: Большие куски кода заключайте в тэг [more]  
 
Смежные темы:
В помощь системному администратору » Автоматизация администрирования
Microsoft Windows » Задачи на bat-файлах 5
 
Полезные ссылки:
· Cmd. Описание от разработчиков
· Урок bat-аники (для начинающих)
· Курс лекций для начинающих. Полезно и просто описано
· Набор GNU утилит для win32
· Пакет утилит для организации интерфейса в bat-файлах
· Использование ansi.sys
· cmdow — изменение параметров и видимости дос-окна
· blat — отправка почты из консоли
· Справка по командам в виде Html
· Команды RunDll32
· Quick Batch File Compiler - Позволяет превратить ваш батник в независимое приложение
· Пример - получение и обработка списка пользователей
· Уильям Станек - Командная строка Microsoft Windows (вплоть до w2k3)
· Простой способ получать текущую дату всегда в одном формате (не зависит от языков и настроек)
· Переход из 32-битной версии cmd.exe в 64-битную

Всего записей: 24190 | Зарегистр. 07-04-2002 | Отправлено: 12:38 10-03-2009 | Исправлено: TechnicsKuzya, 13:54 27-12-2009
Rodgerland

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

Всего записей: 27 | Зарегистр. 26-01-2007 | Отправлено: 13:23 18-01-2010
bomzzz



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Rodgerland
 
REG QUERY "HKCU\Software\MyKey" /V MyParametr
IF ERRORLEVEL 1 GOTO SHISH
REG ADD "HKCU\Software\MyKey" /V MyParametr /t REG_SZ /d "MyNewValue" /F
:SHISH

Всего записей: 13343 | Зарегистр. 13-01-2008 | Отправлено: 13:28 18-01-2010 | Исправлено: bomzzz, 13:29 18-01-2010
abasov



Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Можно это перекроить на винконсоль?
 

Код:
find -not -empty -type f -printf "%s\n" | sort -rn | uniq -d | xargs -I{} -n1 find -type f -size {}c -print0 | xargs -0 md5sum | sort | uniq -w32 --all-repeated=separate  

Всего записей: 345 | Зарегистр. 12-11-2002 | Отправлено: 14:11 18-01-2010
Rodgerland

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
bomzzz
 
Мне нужно отключить antialiasing в настройках видеокарты, а этот ключ (D3DOGL_70835937) находиться тут (HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Video\{4905C349-A802-42C7-B4AD-40C8E1F34419}\0000). значение у него "D3DOGL_70835937"=hex:00,00,02,00 , а мне надо чтоб было 00,00,00,10 . Вот в общем найти ключ и зменит значение, то что ты сказал у меня не меняет. Поможешь уж поточнее?

Всего записей: 27 | Зарегистр. 26-01-2007 | Отправлено: 14:15 18-01-2010
bomzzz



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
а я откуда знаю чего тебе надо    
и не так уж и трудно подставить нужные значения
 
REG ADD "HKLM\Software\SYSTEM\ControlSet001\Control\Video\{4905C349-A802-42C7-B4AD-40C8E1F34419}" /V 0000 /t REG_DWORD /d "D3DOGL_70835937"=hex:00,00,00,10
 
так наверно, то что ты написал недостаочно

Всего записей: 13343 | Зарегистр. 13-01-2008 | Отправлено: 14:39 18-01-2010
Rodgerland

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
bomzzz
 
так мне нужно найти в реестре сам ключ "D3DOGL_70835937" и заменить только его, так как класс ид у всех разный. Или я неправельно объясняю или недопонимаю. Т.Е. путь HKLM\Software\SYSTEM\ControlSet001\Control\Video .... далее разные классы ид..

Всего записей: 27 | Зарегистр. 26-01-2007 | Отправлено: 14:58 18-01-2010 | Исправлено: Rodgerland, 15:01 18-01-2010
bomzzz



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ты ключ экпортируй из реестра и в блокноте открой
 
HKLM\Software\SYSTEM\ControlSet001\Control\Video ....

Всего записей: 13343 | Зарегистр. 13-01-2008 | Отправлено: 15:07 18-01-2010
Rodgerland

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
bomzzz
 
 
Ну так я же не вручную путь пишу, вот, лишнее убрал  
 
[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Video\{4905C349-A802-42C7-B4AD-40C8E1F34419}\0000]
"D3DOGL_70835937"=hex:00,00,20,00
 
{4905C349-A802-42C7-B4AD-40C8E1F34419} - только у меня такой и не обязательно что будет в папке ControlSet001, главное что в разделе HKEY_LOCAL_MACHINE\SYSTEM

Всего записей: 27 | Зарегистр. 26-01-2007 | Отправлено: 15:25 18-01-2010
bomzzz



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
тип ключа как раз было не лишнее
 
Добавлено:
только у меня ключ будет не такой нельзя ли поточнее....    
у меня вообще таких ключей нету. кстати по моему этот раздел нужно редактировать не здесь

Всего записей: 13343 | Зарегистр. 13-01-2008 | Отправлено: 15:28 18-01-2010
Rodgerland

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
REG_BINARY  
D3DOGL_70835937 поищи если у тебя nvidia

Всего записей: 27 | Зарегистр. 26-01-2007 | Отправлено: 15:33 18-01-2010 | Исправлено: Rodgerland, 15:35 18-01-2010
mugil_cephalus

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
reg query "hklm\system" /s|find /i "D3DOGL_70835937"

Всего записей: 1072 | Зарегистр. 07-09-2009 | Отправлено: 15:38 18-01-2010
bomzzz



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

Цитата:
 
REG ADD <раздел> [/v <параметр> | /ve] [/t <тип>] [/s <разделитель>]
                 [/d <данные>] [/f]
 
  <раздел> [\\<компьютер>\]<путь>
       <компьютер> Имя удаленного компьютера, если оно опущено, то по умолчанию
                   считается равным имени локального компьютера.
                   На удаленных компьютерах доступны только разделы HKLM и HKU.
       <путь>      Полный путь к разделу реестра в виде КОРЕНЬ\Подраздел.
       <КОРЕНЬ>    Корневой радел. Значения [ HKLM | HKCU | HKCR | HKU | HKCC ].
 
       <подраздел> Полный путь к разделу реестра в выбранном корневом разделе.
 
  /v   Имя добавляемого параметра в указанном разделе.
 
  /ve  Добавить пустой параметр (По умолчанию) в указанный раздел.
 
  /t   Типы данных.
       [REG_SZ    | REG_MULTI_SZ  | REG_DWORD_BIG_ENDIAN    |
        REG_DWORD | REG_BINARY    | REG_DWORD_LITTLE_ENDIAN |
        REG_NONE  | REG_EXPAND_SZ ]
       По умолчанию, считается равным REG_SZ.
 
  /s   Определяет разделитель, который используется для разделения данных в
       многострочных параметрах типа REG_MULTI_SZ. По умолчанию, считается
       равным "\0".
 
  /d     Значение, присеваемое добавляемому параметру реестра.
  /f     Принудительно перезаписывать существующие записи реестра
         без предупреждения.
 
Примеры:
 
REG ADD \\ABC\HKLM\Software\MyCo
  Добавляет раздел HKLM\Software\MyCo на удаленный компьютер ABC
 
REG ADD HKLM\Software\MyCo /v Data /t REG_BINARY /d fe340ead
  Добавляет параметр с именем: Data, типом: REG_BINARY, и значением: fe340ead
 
REG ADD HKLM\Software\MyCo /v MRU /t REG_MULTI_SZ /d fax\0mail
  Добавляет параметр с именем: MRU, типом: REG_MUTLI_SZ,
  и значением: fax\0mail\0\0
 
REG ADD HKLM\Software\MyCo /v Path /t REG_EXPAND_SZ /d %%systemroot%%
  Добавляет параметр с именем: Path, типом: REG_EXPAND_SZ,
  и значением: %systemroot%
  Примечание:  Используйте в строке двойные символы процента ( %% )
 

Всего записей: 13343 | Зарегистр. 13-01-2008 | Отправлено: 15:39 18-01-2010
Rodgerland

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
mugil_cephalus
 
Вот, нашел, и далее изменить значение этого ключа?

Всего записей: 27 | Зарегистр. 26-01-2007 | Отправлено: 15:52 18-01-2010
bomzzz



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
"D3DOGL_70835937" ЭТО не ключ а параметр ключа
и этот раздел надо редактировать не здесь по моему

Всего записей: 13343 | Зарегистр. 13-01-2008 | Отправлено: 15:54 18-01-2010 | Исправлено: bomzzz, 15:55 18-01-2010
Rodgerland

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
bomzzz
 
Вот смотри, значит мы нашли что искали в реестре reg query "hklm\system" /s|find /i "D3DOGL_70835937" ,теперь как-то надо из найденного изменить значение... Возможно?

Всего записей: 27 | Зарегистр. 26-01-2007 | Отправлено: 16:00 18-01-2010
bomzzz



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

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

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Rodgerland
bomzzz
давайте договоримся о дефинициях, чтоб не путаться:

Цитата:
REG ADD HKLM\Software\MyCo /v Data /t REG_BINARY /d fe340ead  
  Добавляет параметр с именем: Data, типом: REG_BINARY, и значением: fe340ead  

 
REG ADD HKLM\Software\MyCo - раздел
Data - параметр
fe340ead  - значение
 
вроде я правильно детерминировал? согласны?
 
Добавлено:
Rodgerland

Цитата:
Вот, нашел, и далее изменить значение этого ключа?

покажи вывод
 
Добавлено:
bomzzz

Цитата:
надо вывод query перенаправить в файл из него считать ключ а потом reg add изменить значение параметра.

 
for ... (reg query "hklm\system" /s|find /i "D3DOGL_70835937") do reg add ?

Всего записей: 1072 | Зарегистр. 07-09-2009 | Отправлено: 16:04 18-01-2010
bomzzz



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
причем тут наше согласие. reg отдельная программа, не факт что поток из нее сможет попадать в FOR по крайней мере я не пробовал

Всего записей: 13343 | Зарегистр. 13-01-2008 | Отправлено: 16:09 18-01-2010 | Исправлено: bomzzz, 16:11 18-01-2010
Rodgerland

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
mugil_cephalus
 
C:\Documents and Settings\Administrator>reg query "hklm\system" /s|find /i "D3DOGL_70835937"
    D3DOGL_70835937    REG_BINARY    00000010
    D3DOGL_70835937    REG_BINARY    00000200
    D3DOGL_70835937    REG_BINARY    00000010
 
Добавлено:
Видимо на лету нельзя, а если экспортировать с начало, а потом уже добавлять с новыми параметрами, так мне по любому приходиться вмешиваться и вписывать нужный раздел.
 
Добавлено:
Ребят, больше идей нет?... Ну на всякий случай, спасибо вам.

Всего записей: 27 | Зарегистр. 26-01-2007 | Отправлено: 16:12 18-01-2010 | Исправлено: Rodgerland, 16:27 18-01-2010
mugil_cephalus

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
bomzzz
я про то, что есть раздел, что - параметр, что - значение, чтобы говорить об одном и том же, а не путаться, - подразумевая под каждым понятием - свое
 
Rodgerland

Цитата:
C:\Documents and Settings\Administrator>reg query "hklm\system" /s|find /i "D3DOGL_70835937"  
    D3DOGL_70835937    REG_BINARY    00000010  
    D3DOGL_70835937    REG_BINARY    00000200  
    D3DOGL_70835937    REG_BINARY    00000010  

 
если бы в выводе писался еще и путь до параметра, тогда бы было легко - типа  
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Video\{4905C349-A802-42C7-B4AD-40C8E1F34419}\0000
    D3DOGL_70835937    REG_BINARY    00000010  
    D3DOGL_70835937    REG_BINARY    00000200  
    D3DOGL_70835937    REG_BINARY    00000010  
а так - надо подумать...
 
Добавлено:
такая пертурбация тоже "не проходит":
F:\Documents and Settings\admin>reg query "hklm\hardware" /s |findstr /i /c:"hkey VideoBiosDate"
FINDSTR: Слишком длинная строка 15.
FINDSTR: Слишком длинная строка 15.
FINDSTR: Слишком длинная строка 15.
FINDSTR: Слишком длинная строка 15.
FINDSTR: Слишком длинная строка 15.
FINDSTR: Слишком длинная строка 15.
FINDSTR: Слишком длинная строка 15.
FINDSTR: Слишком длинная строка 15.
FINDSTR: Слишком длинная строка 15.
FINDSTR: Слишком длинная строка 15.
FINDSTR: Слишком длинная строка 15.
FINDSTR: Слишком длинная строка 15.
FINDSTR: Слишком длинная строка 15.
FINDSTR: Слишком длинная строка 15.
FINDSTR: Слишком длинная строка 15.
FINDSTR: Слишком длинная строка 15.
FINDSTR: Слишком длинная строка 125.
FINDSTR: Слишком длинная строка 286.
FINDSTR: Слишком длинная строка 287.
 
Добавлено:
Rodgerland
 
попробуй

Код:
for /f "tokens=*" %%i in ('reg query "hklm\system" /s ^|find /i /n "D3DOGL_70835937"') do for /f "tokens=1 delims=[]" %%a in ('echo %%i') do set "skip1=%%a" &&goto:next
:next
for /f "skip=%skip1% tokens=*" %%i in ('reg query "hklm\system" /s ^|find /i /n "HKEY_LOCAL_MACHINE\system"') do for /f "tokens=1 delims=[]" %%a in ('echo %%i') do set "skip2=%%a" &&goto:next2
:next2
set /a skip2-=2
for /f "skip=%skip2% tokens=*" %%i in ('reg query "hklm\system" /s ^|find /i /n "HKEY_LOCAL_MACHINE\system"') do for /f "tokens=1 delims=[]" %%a in ('echo %%i') do set "var=%%a" &&goto:next3
:next3
echo _%var%_
pause

Всего записей: 1072 | Зарегистр. 07-09-2009 | Отправлено: 20:18 18-01-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 » Компьютеры » Программы » Командная строка, батники, сценарии (bat, cmd)
Widok (03-03-2010 16:29): Лимит страниц. Продолжаем здесь.


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

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.Board
© Ru.Board 2000-2020

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru