EasyCureLogs! - автоматический сборщик логов и лечения ПК

EasyCureLogs! - автоматический сборщик логов и лечения ПК 2.0.2.4-aid-inst

  • Автор темы Автор темы Phoenix
  • Дата начала Дата начала

Phoenix

Разработчик
Сообщения
2,141
Реакции
1,664
Некоторое время назад мне довелось самому делать сборщик логов для раздела лечения форума доктор веб.
(не то что бы ЯЯЯ... почему то никто не брался, время шло скрипт написанный кем-то (не знаю кем) безнадёжно устаревал (для антивируса и лечащей утилиты 5-6 версий) и я взялся за его отладку никого не спрашивая.. в итоге получилось вот forum_drweb.zip.)
CMD/BATCH:
:easy
cls
@echo off
@chcp 866
@title http://forum.drweb.com - cureit script beginning !
@color 06
@echo off
if not exist C:\forum_drweb md C:\forum_drweb

echo %allusersprofile%>C:\forum_drweb\critical.txt
if exist "%HOMEDRIVE%\Documents and Settings" echo %HOMEDRIVE%\Documents and Settings>>C:\forum_drweb\critical.txt
if exist %HOMEDRIVE%\users echo %HOMEDRIVE%\users>>C:\forum_drweb\critical.txt

:Scan
if exist "%programfiles%\DrWeb\dwscanner.exe" goto DRW
if exist "%programfiles(86)%\DrWeb\dwscanner.exe" goto DRWX
if not exist .\scanner.exe goto ren

:CUR
echo Start DrWeb CureIt stage one
scanner.exe /cureit_disable_uac /AA /AR- /AC- /BI- /ok /RP:C:\forum_drweb\userscan.log /FL-:C:\forum_drweb\critical.txt /quit
echo Start DrWeb CureIt stage two
scanner.exe /cureit_disable_uac /LITE /BI- /ok /TR /TB /AA /RP:C:\forum_drweb\litescan.log /quit
goto LOG

:DRWX
echo Start DrWeb Scanner stage one
"%programfiles(86)%\DrWeb\dwscanner.exe" /AR- /AC- /BI- /ok /AA /RP:C:\forum_drweb\dwuserscan.log /FL-:C:\forum_drweb\critical.txt /quit
echo Start DrWeb Scanner stage two
"%programfiles(86)%\DrWeb\dwscanner.exe" /LITE /BI- /ok /TR /TB /AA /RP:C:\forum_drweb\dwlitescan.log /quit
goto LOG

:DRW
echo Start DrWeb Scanner stage one
"%programfiles%\DrWeb\dwscanner.exe" /AR- /AC- /BI- /ok /AA /RP:C:\forum_drweb\dwuserscan.log /FL-:C:\forum_drweb\critical.txt /quit
echo Start DrWeb Scanner stage two
"%programfiles%\DrWeb\dwscanner.exe" /LITE /BI- /ok /TR /TB /AA /RP:C:\forum_drweb\dwlitescan.log /quit
goto LOG

:LOG
copy .\HiJackThis.exe C:\forum_drweb\ /y
C:\forum_drweb\HiJackThis.exe /silentautolog
del C:\forum_drweb\HiJackThis.exe /f /q
ver>C:\forum_drweb\x-info.log
set >>C:\forum_drweb\x-info.log
dir %windir% /a /o:g-d /-c >> C:\forum_drweb\x-info.log
dir %windir%\system32 /a /o:g-d /-c >> C:\forum_drweb\x-info.log
dir %windir%\system32\drivers /a /o:g-d /-c >> C:\forum_drweb\x-info.log
dir %temp% /a /o:g-d /-c >> C:\forum_drweb\x-info.log
dir %AppData% /a /o:g-d /-c >> C:\forum_drweb\x-info.log
dir .\ /a /-c >> C:\forum_drweb\x-info.log
ipconfig /all >C:\forum_drweb\ipconfig.log
explorer C:\forum_drweb\
exit

:ren
@color 06
echo RENAME PLEASE CUREIT in to SCANNER.EXE and press ANY KEY !
pause && goto easy

Пожалуйста оставляйте отзывы и предложения.
(По специфике форума использование сторонних утилит строго ограничено..)

logsdone.webp

log_programfiles.webp

plstf.webp

sysinf.webp

inf_inst.webp

_______________________________
Скачать последнюю версию сборщика логов
можно под паучком:
 
Последнее редактирование модератором:
в итоге получилось вот forum_drweb.zip.)
Sorry, you don't have permission for that!

А сколько весит архив? Можете выложить сюда? или на rghost.ru, хотелось бы не только почитать код, но и потестить вживую :)
 
Sorry.. :) В принципе он под спойлером.
Инструкция.
Альтернативный способ создания логов (автоматический режим)

Если создание логов в ручном режиме вызывает у вас затруднения, можно воспользоваться bat-файлом, создающим большую часть логов автоматически.
Для этого скачайте архив forum_drweb.zip, распакуйте его в в любую папку (можно на рабочий стол), туда же положите утилиту HijackThis и, если у вас не установлен DrWeb-8 (7), утилиту CureIt!, переименовав её в scanner.exe, и запустите файл forum_drweb.cmd щелкнув по нему правой кнопкой мыши и выбрав в его контекстном меню Запуск от имени администратора (на ОС Vista и выше). Будут созданы логи и открыты в Проводнике Windows в папке C:\forum_drweb. Заархивируйте эту папку и приложите этот архив на форуме.
Также нужен штатный отчет Dr. Web или лог утилиты DrWeb SysInfo, его делать самостоятельно по вышеописанным ссылкам.critical.txt это файл список путей для сканера
Проверяются такие области- (автоматически применяются действия над заражёными объектами - лечатся/крантинятся или удаляются.)
Stage one
Object(s) to scan:
- C:\ProgramData
- C:\Documents and Settings
- C:\users

Stage two
Object(s) to scan:
- Scan processes in memory
- Scan boot sectors
- Scan system restore points
- Scanning for rootkits
 

Вложения

Последнее редактирование:
Пожалуйста оставляйте отзывы и предложения.
Отзывы... предложения?
2 абзаца Вашей инструкции заменить на 1 батник :)
(По специфике форума использование сторонних утилит строго ограничено..)
Т.е. нельзя включать качалки, вроде нашего логосборщика WGET?
critical.txt это файл список путей для сканера
а где он должен быть? В сборщике такого не наблюдаю.++ у Вас в инструкции файлы для скачивания выделены жырным, а толку 0. Лучше вместо этого гиперссылки вставить (мне, например, очень неудобно читать такое).++ инструкция хотя бы в текущем виде к батнику сделать не плоскую, а вертикальную (по пунктам № 1, № 2. - четко структурированную):

Способ автоматического создание логов:
1. Создать на рабочем столе папку "Лечение" и скопировать туда такие файлы:
  • Распаковать файл forum_drweb.cmd из архива forum_drweb.zip <<-- здесь гиперссылка (я бы батнику дал другое имя, чтобы не путать с одноименным каталогом)
  • Утилиту HijackThis.exe <-- гиперссылка
  • Если у вас не установлен DrWeb-8 (7), утилиту CureIt! <<<-- гиперссылку, переименовав её в scanner.exe <--- это можно автоматизировать!
2. Запустите файл forum_drweb.cmd, щелкнув по нему правой кнопкой мыши и выбрав "Запустить от имени Администратора" (для ОС Vista и выше)
3. Дождитесь завершения работы. После сканирования будут созданы логи.
4. Заархивируйте папку C:\forum_drweb и приложите этот архив, создав новую тему на форуме <<--- гиперссылка.
5. Также нужен штатный отчет Dr. Web или лог утилиты DrWeb SysInfo <<<--- гиперссылка (а нельзя его тоже автоматизировать?)
 
Последнее редактирование:
if exist "%HOMEDRIVE%\Documents and Settings"
он в принципе всегда Exist (там хардлинк).

Здесь будет ошибка.
На XP эта папка содержит пробелы. "Закавычьте" ее. И заочно "закавычьте" другие папки на всякий случай.

@echo off
@chcp 866
@title http://forum.drweb.com - cureit script beginning !
@color 06
@echo off
Вот эти символы @ - они лишние (один раз только нужно писать).
@echo off - дважды повторяется.

Это можно опустить под строку @echo off

В самом начале файла нужно писать:
cd /d "%~dp0"

Странно, что код вообще работает без нее.
Если запустить "От имени Администратора", рабочая папка сменится на %windir%\system32
и проверки вида
if not exist .\scanner.exe
всегда будут FALSE.

По остальной части кода вроде ничего. Ключи запуска CureIT Вам лучше знать. Тут я не вникаю.

Подпрограмму ren я бы модифицировал алгоритмом автоопределения имени EXE-шника в папке, который весит более 50 МБ (это и будет наш CureIT).

CMD/BATCH:
:: Эту строку и POPD можно не писать при условии, что Вы написали в начале батника CD /D "%~dp0"
:: и более никаких переходов cd / chdir не производили
pushd "%~dp0"
For /F "delims=" %%? in ('dir /B /A-D *.exe') do if %%~z? GTR 50000000 set "CureIT=%%?"
:: если найден файл, переименовуем его в scanner.exe
if Defined CureIT (
  ren "%CureIT%" "scanner.exe"
  goto CUR
) else (
  echo RENAME PLEASE CUREIT in to SCANNER.EXE and press ANY KEY !
  pause
  goto easy
)
 
Учитывая, что Cureit обновляется каждые четыре часа, то я бы добавил в батник его скачивание и переименование.
Скачивать лучше всего из этой папки: ftp://ftp.drweb.com/pub/drweb/cureit/
Там Cureit лежит под четырьмя разными именами, можно выбрать любое.
Тем более, что для скачивания с ftp внешние утилиты не нужны.
Хотя мне кажется, что лучше без переименования.
 
Прежде всего благодарю за замечания. Особо за инструкцию. Но оформлением занимается один модератор и от него и зависит (но предложу ваш вариант).
if exist "%HOMEDRIVE%\Documents and Settings"
он в принципе всегда Exist (там хардлинк).
А как же ХР ? Там это аналог папки Users. На win 7 её может и не быть - юзер может удалить. Получим непонятную ошибку.

dir %AppData%
Здесь будет ошибка.
+

critical.txt это файл список путей для сканера
а где он должен быть? В сборщике такого не наблюдаю.
Он удаляется после сканирования /FL-:C:\forum_drweb\critical.txt (это ключ сканера-cureit)
Код:
echo %allusersprofile%>C:\forum_drweb\critical.txt

if exist "%HOMEDRIVE%\Documents and Settings" echo %HOMEDRIVE%\Documents and Settings>>C:\forum_drweb\critical.txt
if exist %HOMEDRIVE%\users
echo %HOMEDRIVE%\users>>C:\forum_drweb\critical.txt


Тем более, что для скачивания с ftp внешние утилиты не нужны.
Проводником копировать ? Так дольше.. ftp ?
if not exist .\scanner.exe
всегда будут FALSE.
Да почему ? эта часть работает.. попробуйте с другим именем.
 
Последнее редактирование:
Гимаев Наиль сказал(а): ↑
Тем более, что для скачивания с ftp внешние утилиты не нужны.
Проводником копировать ? Так дольше..
Вы знаете как можно в батник добавить копирование из ftp Проводником?
Если да, то хотелось бы в двух словах услышать как. Люблю узнавать новое.
А мой вариант был таким:
CMD/BATCH:
(echo binary&echo get /pub/drweb/cureit/setup.exe)| ftp -A ftp.drweb.com
Когда советовал, я не знал страшный недостаток этого метода - полное отсутствие обратной связи.
Ни каких подсказок и надписей дающих понять, сколько осталось до конца процесса.
А это совершенно недопустимо для файлов такого большого размера.
Поэтому если уж и скачивать, то через wget.
Проводником копировать ?
Этот вопрос навёл меня на мысль, что можно скачивать браузером по умолчанию:
CMD/BATCH:
start "" "ftp://ftp.drweb.com/pub/drweb/cureit/cureit.exe"
Причём так можно скачивать вообще любые файлы.
Но тогда задача по копированию в нужную папку и переименованию файла ложится на плечи пользователя.
 
Последнее редактирование:
Но тогда задача по копированию в нужную папку и переименованию файла ложится на плечи пользователя.
Ну так временно менять папку для загрузок?
Не помню на всех ли браузерах можно это через реестр делать,проверю.
 
Гимаев Наиль, можно просто сообщение написать "Скачивается файл...". Скрипт ведь простой.
Если не ошибаюсь там нужно прописать команды HASH и BINARY. Тогда будет видно процесс скачивания (но не прогрессбар). QUOTE PASV еще можно (переход в пассивный режим).

Я бы еще предложил вариант через VBScript:

VB.NET / VBA:
WScript.Echo(GetFileFromURL("ftp://ftp.drweb.com/pub/drweb/cureit/cureit.exe","C:\forum_drweb\cureit.exe"))
Function GetFileFromURL(strURL, strPath)
    Const adTypeBinary          = 1
    Const adSaveCreateOverWrite = 2
    With CreateObject("MSXML2.XMLHTTP")
        .open "GET", strURL, False
        .send
        arrContent = .responseBody
    End With
    With CreateObject("ADODB.Stream")
        .Type = adTypeBinary
        .Open
        .Write arrContent
        .SaveToFile strPath, adSaveCreateOverWrite
    End With
    With CreateObject("Scripting.FileSystemObject")
        If objFSO.FileExists(strPath) Then
            If objFSO.GetFile(strPath).Size <> 0 Then GetFileFromURL = True
        End If
    end with
End Function
 
Последнее редактирование:
Этот вопрос навёл меня на мысль, что можно скачивать браузером по умолчанию:
CMD/BATCH:
start "" "ftp://ftp.drweb.com/pub/drweb/cureit/cureit.exe"
OR
CMD/BATCH:
explorer ftp://ftp.drweb.com/pub/drweb/cureit/cureit.exe
:)

Сделал попроще. Добавил элевацию и изменил директорию всех юзеров на текущего, добавил програмные папки (общее время сканирования 11мин. Е6700 3.2GHz) + Исправил ошибки.
(на счёт скачивания всё таки предполагается, что пользователь скачал с чистой машины и запускает на заражённой; при скачивании на заражённой файл может повредиться, что бывает часто, а значит и проверку подписи-хеша-размера...).

С этой частью что можно сделать ? Она необходима ? (вроде нет).
CMD/BATCH:
:: Проверка
::Пытаемся записать пустой файл в корень системного раздела
cd.>c:\test.log
if exist c:\test.log Echo OK - привилегии получены.
exit

CMD/BATCH:
@echo off
if "%1"=="" (
  Echo CreateObject^("Shell.Application"^).ShellExecute WScript.Arguments^(0^),"Admin","","runas",1 >"%~dp0Elevating.vbs"
  cscript.exe //nologo "%~dp0Elevating.vbs" "%~dpnx0"& Goto :eof
)
>nul del "%~dp0Elevating.vbs"
chdir /d "%~dp0"

:: <---код основной программы
chcp 866 >nul
cd /d "%~dp0"
:easy
cls
title http://forum.drweb.com - cureit script beginning !
color 06
::create log dir
if not exist C:\forum_drweb md C:\forum_drweb

::collect paths to scan
echo %allusersprofile%>C:\forum_drweb\critical.txt
echo %userprofile%>>C:\forum_drweb\critical.txt
echo %programfiles%>>C:\forum_drweb\critical.txt
if exist "%programfiles(x86)%" echo %programfiles(x86)%>>C:\forum_drweb\critical.txt

:Scan
::search scanner 7,8-9,CureIt
if exist "%programfiles%\DrWeb\dwscanner.exe" goto DRW
if exist "%programfiles(86)%\DrWeb\dwscanner.exe" goto DRWX
if not exist .\scanner.exe goto ren

:CUR
::CureIt
echo Start DrWeb CureIt stage one
scanner.exe /cureit_disable_uac /AA /AR- /AC- /BI- /ok /RP:C:\forum_drweb\userscan_%random%.log /FL-:C:\forum_drweb\critical.txt /quit
echo Start DrWeb CureIt stage two
scanner.exe /cureit_disable_uac /LITE /BI- /ok /TR /TB /AA /RP:C:\forum_drweb\litescan_%random%.log /quit
goto LOG

:DRWX
::DrWeb7
echo Start DrWeb Scanner stage one
"%programfiles(86)%\DrWeb\dwscanner.exe" /AR- /AC- /BI- /ok /AA /RP:C:\forum_drweb\dwuserscan_%random%.log /FL-:C:\forum_drweb\critical.txt /quit
echo Start DrWeb Scanner stage two
"%programfiles(86)%\DrWeb\dwscanner.exe" /LITE /BI- /ok /TR /TB /AA /RP:C:\forum_drweb\dwlitescan_%random%.log /quit
goto LOG

:DRW
::DrWeb8-9
echo Start DrWeb Scanner stage one
"%programfiles%\DrWeb\dwscanner.exe" /AR- /AC- /BI- /ok /AA /RP:C:\forum_drweb\dwuserscan_%random%.log /FL-:C:\forum_drweb\critical.txt /quit
echo Start DrWeb Scanner stage two
"%programfiles%\DrWeb\dwscanner.exe" /LITE /BI- /ok /TR /TB /AA /RP:C:\forum_drweb\dwlitescan_%random%.log /quit
goto LOG

:LOG
chcp 1251 >nul
copy .\HiJackThis.exe C:\forum_drweb\ /y
C:\forum_drweb\HiJackThis.exe /silentautolog
del C:\forum_drweb\HiJackThis.exe /f /q
ver>C:\forum_drweb\x-info.log
set >>C:\forum_drweb\x-info.log
dir %windir% /a /o:g-d /-c >> C:\forum_drweb\x-info.log
dir %windir%\system32 /a /o:g-d /-c >> C:\forum_drweb\x-info.log
dir %windir%\system32\drivers /a /o:g-d /-c >> C:\forum_drweb\x-info.log
dir %temp% /a /o:g-d /-c >> C:\forum_drweb\x-info.log
dir "%AppData%" /a /o:g-d /-c >> C:\forum_drweb\x-info.log
dir .\ /a /-c >> C:\forum_drweb\x-info.log
ipconfig /all >C:\forum_drweb\ipconfig.log
explorer C:\forum_drweb\
exit

:ren
color 06
echo RENAME PLEASE CUREIT in to SCANNER.EXE and press ANY KEY !
pause && goto easy
:: <---код основной программы

:: Проверка
::Пытаемся записать пустой файл в корень системного раздела
cd.>c:\test.log
if exist c:\test.log Echo OK - привилегии получены.
exit
Так
CMD/BATCH:
:: Проверка
::Пытаемся записать пустой файл в корень системного раздела
cd.>c:\test.log
if exist c:\test.log Echo OK - Work with Elevated Rights.>> C:\forum_drweb\x-info.log
exit
Вот так.
CMD/BATCH:
:LOG
chcp 1251 >nul
copy .\HiJackThis.exe C:\forum_drweb\ /y
C:\forum_drweb\HiJackThis.exe /silentautolog
del C:\forum_drweb\HiJackThis.exe /f /q

::test elevating
cd.>c:\test.log
if exist c:\test.log Echo OK - Work with Elevated Rights.>C:\forum_drweb\x-info.log
if not exist c:\test.log Echo OK - Work without Elevated Rights.>C:\forum_drweb\x-info.log
ver>>C:\forum_drweb\x-info.log
set >>C:\forum_drweb\x-info.log
dir %windir% /a /o:g-d /-c >> C:\forum_drweb\x-info.log
dir %windir%\system32 /a /o:g-d /-c >> C:\forum_drweb\x-info.log
dir %windir%\system32\drivers /a /o:g-d /-c >> C:\forum_drweb\x-info.log
dir %temp% /a /o:g-d /-c >> C:\forum_drweb\x-info.log
dir "%AppData%" /a /o:g-d /-c >> C:\forum_drweb\x-info.log
dir .\ /a /-c >> C:\forum_drweb\x-info.log
ipconfig /all >C:\forum_drweb\ipconfig.log
explorer C:\forum_drweb\
exit
Все C: заменил на %homedrive% (если нет диска C: будет fatal error); к имени отчёта добавил_%date%_%random% (хотел время, но недопустимые символы...в общем что бы отчёты не затирались и не было путаницы.)
Для полного счастья не достаёт смены временной папки...
Dragokas, скрипт качает хоть и без прогресс бара. (но это на потом, наверное). Фишка с переименованием заманчива, но боюсь Typical users O_o
Можно сделать специальный скрипт со всеми примочками и фичами.. ах чуть не забыл за сисинфо .. он без ключей (мне о них не известно), а значит соберёт всё из папки "%userprofile%\Doctor Web" и иногда виснет...
 

Вложения

Последнее редактирование:
Смотри сюда:
C:\Windows\system32>net user "A Alex" /add
Команда выполнена успешно.

C:\Windows\system32>net user

Учетные записи пользователей для \\ALEX-PC
-------------------------------------------------------
___VMware_Conv_SA___ A Alex Alex
UpdatusUser Администратор Гость
Команда выполнена успешно.
Следовательно у Вас опять выбьет ошибку, пока не закавычите.
Есть еще такое извращение как переименовывать системную папку Windows при установке.
Случаи могут быть разные. Поэтому я бы поосторожничал и все остальное тоже загнал бы в кавычки.
Для полного счастья не достаёт смены временной папки...
Детализируйте...

Код:
cd.>c:\test.log
if exist c:\test.log Echo OK - Work with Elevated Rights.>> C:\forum_drweb\x-info.log
exit
Я так раньше делал. Очень ненадежная проверка.
У меня через полгода установки разного софта, все таки подтерлись права на системный раздел (кстати, не впервые).
Поэтому лучше все же через реестр:

Код:
reg add "HKLM\Software\Elevation_Test" /F
if %errorlevel%==0 set Admin=true
reg delete "HKLM\Software\Elevation_Test" /F
а дальше использование:
if defined Admin echo Есть права>> Файл.отчета

if "%1"=="" (
Echo CreateObject^("Shell.Application"^).ShellExecute WScript.Arguments^(0^),"Admin","","runas",1 >"%~dp0Elevating.vbs"
cscript.exe //nologo "%~dp0Elevating.vbs" "%~dpnx0"& Goto :eof
)
>nul del "%~dp0Elevating.vbs"
Вот так сразу тоже не стоит делать.
Если ОСь - XP, то улетит в нирвану не стартует скрипт.
Нужно проверять версию. Проще всего:
Код:
ver | find "6." && if "%1"=="" (
    Echo CreateObject^("Shell.Application"^).ShellExecute WScript.Arguments^(0^),"Admin","","runas",1 >"%~dp0Elevating.vbs"
    cscript.exe //nologo "%~dp0Elevating.vbs" "%~f0"& Exit /B
)
к имени отчёта добавил_%date%_%random%
Если ОСь англоязычная, скрипт вероятнее всего "вылетит".
Смотри:
C:\Documents and Settings\Administrator>date
The current date is: Tue 11/19/2013
Enter the new date: (mm-dd-yy)

C:\Documents and Settings\Administrator>cd.>test

C:\Documents and Settings\Administrator>ren test "test_%date%"
The system cannot find the path specified.

C:\Documents and Settings\Administrator>ren test test2

C:\Documents and Settings\Administrator>
Поэтому нужно сперва осуществить замену вероятных символов в дате, которые не могут использоваться в качестве имени для файла.
И не забудь кавычки тоже поставить. Tue 11/19/2013 - здесь мы видим еще и пробел.
Код:
::если в файле будут символы / - то произойдет замена на -
set cur_date=%date:/=-%
::переименовуем отчет:
ren "отчет.zip" "отчет_%cur_date%"
::Да можно и сразу
ren "отчет.zip" "отчет_%date:/=-%"
 
Показанная мною конструкция надежна, можно не беспокоится.
 
It's realy Good ;)
CMD/BATCH:
msinfo32 /nfo %homedrive%\forum_drweb\INFO.NFO
7za.exe a "forum_drweb_%date:/=-%".zip %homedrive%\forum_drweb\*.log %homedrive%\forum_drweb\*.nfo
echo msgbox "Завершено. После нажатия ОК откроется папка - Отправьте архив forum_drweb_%date:/=-%.zip на форум.">xmsg.vbs
start/wait xmsg.vbs && del xmsg.vbs /f/q
explorer .\
 
Сканер кавычек не понимает, надо ключ указывать /QNA – выводить пути в двойных кавычках. наверное, не проверял.
Тут есть 3 варианта без сканирования, скачать кьюрит и сканер/кьюрит (вложенный руками).
CMD/BATCH:
CHOICE /C 123 /M " LOG'S ONLY=[3],DOWNLOAD CUREIT=[1],SCAN=[2]..."
Код:
OK - Work with Elevated Rights.
Dragokas from SafeZone.cc says 'Есть права';)
(y)
 

Вложения

Для полного счастья не достаёт смены временной папки...
Если в начало батника записать такой код:
CMD/BATCH:
set tmp="%~dp0temp"
set temp=%tmp%
то все программы запущенные из батника будут уверены, временная папка находится в папке с батником.
 
Phoenix, утилиты Choice нет в Windows XP.
Вместо этого можете воспользоваться такой конструкцией с подтверждением клавишей ENTER.
CMD/BATCH:
:menu
cls
echo 1. DOWNLOAD CUREIT
echo 2. SCAN
echo 3. LOG'S ONLY
echo --------------------------------
echo Enter Number and press ENTER.
set x=
set /p x=
if "%x%"=="1" goto Download
if "%x%"=="2" goto Scan
if "%x%"=="3" goto Logs
goto menu
 
Не было.
По крайней мере в моей старенькой книге ее нет среди перечня команд/утилит.
 
Назад
Сверху Снизу