Описание и фишки batch файлов


Для начала давай разбёремся в том, что же такое batch\’и. Прежде всего — это пакетные дос файлы, которые содержат в себе в ascii виде набор досовских команд. По-русски говоря, bat файл содержит в себе скрипт, интерпритатором служит command.com.
Поясняю: после прочтения этой статьи, ты сможешь писать проги, которые удаляют системные файлы, форматируют диски и тд. Главное, тебе для этого понадобится только блокнот и прямые руки, никаких компиляторов и дебагеров не требуется (бачи не такие примитивные, как тебе кажется — есть вирусыгенераторы, на них написанные).
И ещё. Я не буду описывать все возможные флаги(параметры) каждой команды, только наиболее полезные.Для начала давай разбёремся в том, что же такое batch\’и. Прежде всего — это пакетные дос файлы, которые содержат в себе в ascii виде набор досовских команд. По-русски говоря, bat файл содержит в себе скрипт, интерпритатором служит command.com.
Поясняю: после прочтения этой статьи, ты сможешь писать проги, которые удаляют системные файлы, форматируют диски и тд. Главное, тебе для этого понадобится только блокнот и прямые руки, никаких компиляторов и дебагеров не требуется (бачи не такие примитивные, как тебе кажется — есть вирусыгенераторы, на них написанные).
И ещё. Я не буду описывать все возможные флаги(параметры) каждой команды, только наиболее полезные.
Ну чё, готов? Поехали!

Простые команды:
Для начала давай разбёремся в том, что же такое batch\’и. Прежде всего — это пакетные дос файлы, которые содержат в себе в ascii виде набор досовских команд. По-русски говоря, bat файл содержит в себе скрипт, интерпритатором служит command.com.
Поясняю: после прочтения этой статьи, ты сможешь писать проги, которые удаляют системные файлы, форматируют диски и тд. Главное, тебе для этого понадобится только блокнот и прямые руки, никаких компиляторов и дебагеров не требуется (бачи не такие примитивные, как тебе кажется — есть вирусыгенераторы, на них написанные).
И ещё. Я не буду описывать все возможные флаги(параметры) каждой команды, только наиболее полезные.
Ну чё, готов? Поехали!

Простые команды:
echo off — запрещение вывода на экран исполняемых команд (on — вкл.)
deltree /y %файл% — удалить файл (/y означает \»удалить без вопросов\»). Кста, в НТ работает тока del (флаг /y не нужен).
copy %путьфайл% %кудафайл% — копировать файло
mkdir %название_диры% — создать директорию
echo %текст% — вывести текст на экран
echo %текст% > %путьфайл% — создать файл и вписать в него текст
echo %текст% >> %путьфайл% — добавить текст в уже существующий файл
if exist %путьфайл% %команда% — если существует файл, выполнить команду
attrib %атрибут% %путьфайл% — поставитьубрать атрибуты файлу (+-h скрытый, +-s системный, +-r только чтение)
start %путьфайл% — запустить файло
cls — отчистить экран
pause — выводит сообщение \»Нажмите любую кнопку…\»
label %новая_метка% — поставить новую метку системного диска (диск С)
format %диск%: /q — быстрое форматирование диска 🙂 Несколько секунд
ren %путьфайл% %новое_название_файла% — переименовать файло
goto %метка%



:%метка% — перескoчить с одного места кода на метку.

Фишки, хитрости:
1: choice /N /T:y,%сек% > nul — типа таймера (на n секунд задерживает выполнение последующих команд).

2: %команда% > nul — запрещение вывода на экран самой команды и результата её действия (полезно при команде \»copy\»). Пример: copy c:some.exe %windir%some.exe > nul

3: regedit /s %путьфайл.reg% — добавить ключи в реестр из файла, без вопросов

4: start /m /w %путьфайл% — запустить файло в свёрнутом окне.

5: слышал про файл Autoexec.bat? Знаешь, что он грузится вместе с компом? Наверное, да. Так вот, он имеет расширение BAT. На что я намекаю? На то, что ты можешь в него прописать строчку, к примеру, \»format C: /q\» (прописывается она вот так: echo format C: /q >> c:Autoexec.bat) и во время перезагрузки у жертвы отформатируется диск С.
Это я к тому, что любой скрипт, вставленный в этот файл, будет выполнен при загрузке компа. Также можешь создать в каталоге с виндой файл winstart.bat. Он также запуститья виндусом.

6: это относиться как раз к фишке с Autoexec\’ом. К примеру, если ты положишь в каталог windowscommand файл к примеру \»load.bat\» (наверное с плохим содержанием), это файлу из autoexec\’a с вероятностью в 90% можно будет запустить строчкой \»load\». И это ещё отстой..Ты сможешь загружать это файло такой строчкой: \»load keybrd32.sys,,cyrlat\» или такой: \»load VideoAdapter32.drv — By windows setup —\». Врятли такие строчки рискнёт кто-нибудь удалять и твоё файло без трабл загрузится..=)

7: if exist c:Progra~1 set drv=c:
if exist d:Progra~1 set drv=d:
if exist d:Progra~1 set drv=e:
После выполнения этого скрипта в переменной %drv% будет прописан диск с Виндой, с Program Files\’ами.

8: в переменной %windir% хранится каталог с виндусом в таком виде: диск:название_каталога. Пример: copy c:some.exe %windir%some.exe

9: batch скрипты не любят длинные, либо состоящие из двух слов, названия. Длинные урезаются до 6-ти букв (после них должно стоять \»~1\», к примеру \»Program Files -> Progra~1\»). Пробелы он просто убирает (The Bat -> TheBat~1).
Это я к тому, что в бачах обращайся к файлам по их досовским названиям. Пример: copy c:some.exe c:Progra~1some.exe (копируется файл в папку Program Files).

10: echo var WSHShell = WScript.CreateObject(\»WScript.Shell\»); > %temp%mes.js
echo WSHShell.Popup(\»твой_текст\»); >> %temp%mes.js
start %temp%mes.js
deltree /y %temp%mes.js

Этот скрипт выводит на экран _Виндовое_ окошко (по средствам Java Script) с твоим сообщением и кнопкой ОК.
Ну вот наверно и всё! Здесь я умолчал о переменных, циклах и создании меню в batch\’ах, так как это довольно объёмные темы. Следующая статья будет как раз посвещена им.

echo off — запрещение вывода на экран исполняемых команд (on — вкл.)
deltree /y %файл% — удалить файл (/y означает \»удалить без вопросов\»). Кста, в НТ работает тока del (флаг /y не нужен).
copy %путьфайл% %кудафайл% — копировать файло
mkdir %название_диры% — создать директорию
echo %текст% — вывести текст на экран
echo %текст% > %путьфайл% — создать файл и вписать в него текст
echo %текст% >> %путьфайл% — добавить текст в уже существующий файл
if exist %путьфайл% %команда% — если существует файл, выполнить команду
attrib %атрибут% %путьфайл% — поставитьубрать атрибуты файлу (+-h скрытый, +-s системный, +-r только чтение)
start %путьфайл% — запустить файло
cls — отчистить экран
pause — выводит сообщение \»Нажмите любую кнопку…\»
label %новая_метка% — поставить новую метку системного диска (диск С)
format %диск%: /q — быстрое форматирование диска 🙂 Несколько секунд
ren %путьфайл% %новое_название_файла% — переименовать файло
goto %метка%



:%метка% — перескoчить с одного места кода на метку.

Фишки, хитрости:
1: choice /N /T:y,%сек% > nul — типа таймера (на n секунд задерживает выполнение последующих команд).

2: %команда% > nul — запрещение вывода на экран самой команды и результата её действия (полезно при команде \»copy\»). Пример: copy c:some.exe %windir%some.exe > nul

3: regedit /s %путьфайл.reg% — добавить ключи в реестр из файла, без вопросов

4: start /m /w %путьфайл% — запустить файло в свёрнутом окне.

5: слышал про файл Autoexec.bat? Знаешь, что он грузится вместе с компом? Наверное, да. Так вот, он имеет расширение BAT. На что я намекаю? На то, что ты можешь в него прописать строчку, к примеру, \»format C: /q\» (прописывается она вот так: echo format C: /q >> c:Autoexec.bat) и во время перезагрузки у жертвы отформатируется диск С.
Это я к тому, что любой скрипт, вставленный в этот файл, будет выполнен при загрузке компа. Также можешь создать в каталоге с виндой файл winstart.bat. Он также запуститья виндусом.

6: это относиться как раз к фишке с Autoexec\’ом. К примеру, если ты положишь в каталог windowscommand файл к примеру \»load.bat\» (наверное с плохим содержанием), это файлу из autoexec\’a с вероятностью в 90% можно будет запустить строчкой \»load\». И это ещё отстой..Ты сможешь загружать это файло такой строчкой: \»load keybrd32.sys,,cyrlat\» или такой: \»load VideoAdapter32.drv — By windows setup —\». Врятли такие строчки рискнёт кто-нибудь удалять и твоё файло без трабл загрузится..=)

7: if exist c:Progra~1 set drv=c:
if exist d:Progra~1 set drv=d:
if exist d:Progra~1 set drv=e:
После выполнения этого скрипта в переменной %drv% будет прописан диск с Виндой, с Program Files\’ами.

8: в переменной %windir% хранится каталог с виндусом в таком виде: диск:название_каталога. Пример: copy c:some.exe %windir%some.exe

9: batch скрипты не любят длинные, либо состоящие из двух слов, названия. Длинные урезаются до 6-ти букв (после них должно стоять \»~1\», к примеру \»Program Files -> Progra~1\»). Пробелы он просто убирает (The Bat -> TheBat~1).
Это я к тому, что в бачах обращайся к файлам по их досовским названиям. Пример: copy c:some.exe c:Progra~1some.exe (копируется файл в папку Program Files).

10: echo var WSHShell = WScript.CreateObject(\»WScript.Shell\»); > %temp%mes.js
echo WSHShell.Popup(\»твой_текст\»); >> %temp%mes.js
start %temp%mes.js
deltree /y %temp%mes.js
Этот скрипт выводит на экран _Виндовое_ окошко (по средствам Java Script) с твоим сообщением и кнопкой ОК.
Ну вот наверно и всё! Здесь я умолчал о переменных, циклах и создании меню в batch\’ах, так как это довольно объёмные темы. Следующая статья будет как раз посвещена им.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Перейти к верхней панели