Ru-Board.club
← Вернуться в раздел «Microsoft Windows»

» Задачи на bat-файлах 9

Автор: lorents
Дата сообщения: 18.09.2010 12:39
bomzzz

Цитата:
FOR /L %%I IN (1,1,1024) DO echo %%I

понял, спасибо.
Автор: Free_Soft
Дата сообщения: 18.09.2010 17:54
BVV63

Код: For /F "Tokens=3" %%I In ('Reg Query "HKLM\Software\Microsoft\Windows NT\CurrentVersion" /V "CurrentVersion" ^| FindStr /I "CurrentVersion"') Do Echo %%I
Автор: faithful
Дата сообщения: 18.09.2010 20:12
Free_Soft

Цитата:
Уже сам вижу, что не достаточно. Так как экранировать ошибку, в случае, если параметр в реестре не существует?

Если FindStr ничего не вернет, то его и нет, равно как и ошибки. Нечего экранировать.

Добавлено:
Я проверяю так:


Код: For /F "Tokens=3" %%I In ('Reg Query "HKLM\Software\Microsoft\Windows NT\CurrentVersion" /V "CurrentVersion" ^| FindStr /I "CurrentVersion"') Do set ok=%%I

if not defined ok call :error_reg_key
...
...
...
:error_reg_key
echo."ERROR!"
goto :EOF
Автор: bomzzz
Дата сообщения: 18.09.2010 20:25

Цитата:

REG QUERY "HKCU\Software\2VG\Download Master" /v InstallPath>nul
IF ERRORLEVEL 1 GOTO NEXTDM
Автор: Free_Soft
Дата сообщения: 18.09.2010 20:38
bomzzz

Код: REG QUERY "HKCU\Software\2VG\Download Master" /v InstallPath>nul
IF ERRORLEVEL 1 GOTO NEXTDM
Автор: prrr
Дата сообщения: 18.09.2010 20:40
чего то я затупил. http://zalil.ru/29694150 вот архив. В нем есть батник rearm.cmd, написал там вроде все правильно и все в принципе работает, но если запускать этот батник не нажатием кнопки enter(или 2 клика мышкой), а скопировав его адрес в командную строку, то он не срабатывает. В чем может быть проблема?
ps: батники сразу исполняются так что если будете запускать будьте осторожны
Автор: bomzzz
Дата сообщения: 18.09.2010 20:40
ну я просто к тому, что возвращается еще код ошибки
Автор: Free_Soft
Дата сообщения: 18.09.2010 20:41
faithful
Спасибо, все получилось

Добавлено:
prrr
Если ты консоль запускаешь из директории System32, то там же должны лежать и reg файлы. Вариант решения - или запускать консоль из папки с файлами, или в батниках прописывать путь к reg файлам.
Автор: prrr
Дата сообщения: 18.09.2010 20:49
Free_Soft

Цитата:
Если ты консоль запускаешь из директории System32, то там же должны лежать и reg файлы. Вариант решения - или запускать консоль из папки с файлами, или в батниках прописывать путь к reg файлам.

точно, я совсем забыл прописать пути для смд и рег файлов
Автор: Free_Soft
Дата сообщения: 19.09.2010 13:58
Вот проблема:

Код: SHUTDOWN /r /t 0 /f
cd \
rd /s /q "%~dp0" & exit
Автор: bomzzz
Дата сообщения: 19.09.2010 13:59
сначала батник удали а потом перегружайся

Добавлено:
чета нифига так не получаеца
Автор: Free_Soft
Дата сообщения: 19.09.2010 14:02
bomzzz
батник удаляется, перезагрузки нет
Автор: bomzzz
Дата сообщения: 19.09.2010 14:03
в шапке перегружалок тонна
Автор: Free_Soft
Дата сообщения: 19.09.2010 14:03
может, есть утилита, позволяющая выполнить перезагруз без окна при t=1?
Автор: bomzzz
Дата сообщения: 19.09.2010 14:06
Free_Soft
щас сделаю

Добавлено:
Free_Soft.exe

Добавлено:
но вообще так не очень корректно с задержкой делать. мало ли
Автор: Free_Soft
Дата сообщения: 19.09.2010 14:08
а синтаксис такой же?
Автор: bomzzz
Дата сообщения: 19.09.2010 14:11
нету никакого синтаксиса. просто запускаешь ее она черех секунду перегружает комп
Автор: Free_Soft
Дата сообщения: 19.09.2010 14:14
bomzzz
отлично! Не сочти за бред, можешь еще сделать, чтобы она после использования самоудалялась? Теперь все срабатывает, но она, как занятая процессом, в папке остается...
Автор: bomzzz
Дата сообщения: 19.09.2010 14:16
текс. она делает перезагрузку так, что дает всем процессам заверщится а только потом перегружает комп. поэтому если

Добавлено:
хм.

Добавлено:
попробуй ее запустить CALL (тогда секунда не нужна), потом она как бы не должна перегрузить комп пока батник не отработает. поэтому если она закончитс батник может удалить ее и себя. попробуй

Добавлено:
программы сами себя удалять кажеца не умеют. или надо тогда выделять память грузить туда программу такого типа

Добавлено:
чтоб удалить надо в реестре делать автозагрузку на один раз, чтоб после перезагрузки какие то файлы удалились какие надо
Автор: Free_Soft
Дата сообщения: 19.09.2010 14:47
bomzzz
Через CALL вроде заработало
Автор: Free_Soft
Дата сообщения: 19.09.2010 18:17
нет, не заработало, к сожалению. все равно остается. А если в реестр в RunOnce писать, нужно батник создать с командой удаления? или можно будет в параметре прописать саму команду?
Автор: faithful
Дата сообщения: 19.09.2010 19:20
Free_Soft

Цитата:
А если в реестр в RunOnce писать, нужно батник создать с командой удаления? или можно будет в параметре прописать саму команду?

А попробовать?!


Код: SHUTDOWN /r /t 0 /f
cd \
rd /s /q "%~dp0" & exit
Автор: Free_Soft
Дата сообщения: 19.09.2010 19:30
faithful
меняю, чтобы удалить директорию, в которой лежит батник, со всем ее содержимым

Добавлено:

Код: start /realtime /b "Shutting down the computer" cmd /c "cd \ & rd /s /q "%~dp0""
SHUTDOWN /r /t 0 /f
Автор: faithful
Дата сообщения: 19.09.2010 20:16
Так надо батник запускать из другой директории.
То есть рабочую директорию использовать иной.
Я так сделал и у меня все удалилось вместе с директорией.
Автор: Free_Soft
Дата сообщения: 19.09.2010 20:41
faithful
ммм... объясни тупому...
Есть батник, который выполняет команды, используя утилиты, лежащие с ним в одной папке. Одна из команд - самоуничтожение директории и перезагрузка компа. Для этого еще батник создавать?
Автор: NIKZZZZ
Дата сообщения: 19.09.2010 21:09
Free_Soft

Цитата:
так удаляется все содержимое, а сама директория остается..


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


Код: start /realtime /b "Shutting down the computer" cmd /c "cd \ & ping -n 3 localhost & rd /s /q ""%~dp0"""
Автор: faithful
Дата сообщения: 19.09.2010 21:20
Free_Soft

Цитата:
Для этого еще батник создавать?

Может тогда делать так:


Код: @echo off
set work_dir=c:\utils\

start /realtime /b "Shutting down the computer" cmd /c "rd /s /q ""%work_dir%run.cmd"""
SHUTDOWN /r /t 0 /f
Автор: bomzzz
Дата сообщения: 19.09.2010 21:31
Free_Soft

Цитата:
нет, не заработало, к сожалению. все равно остается. А если в реестр в RunOnce писать, нужно батник создать с командой удаления? или можно будет в параметре прописать саму команду?

не помню, но это многие программы используют, если например используют какие то службы, удаляется все что можно отключается атвозапуск службы, а на одноразовый запуск ставится удаление файла службы. гуглить надо.
Автор: H4rDc0r3
Дата сообщения: 19.09.2010 22:26
Помогите перевести скрипт с баша на бат
Сабж тут http://radjik.blogspot.com/2010/03/wwwpixivnet.html
заранее благодарен
Автор: bomzzz
Дата сообщения: 19.09.2010 22:54
вроде он почти инаписан командная строка wget-а есть

Страницы: 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667

Предыдущая тема: Windows 7 Starter


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.