![]() |
Утилиты командной строкиПапка: CMD-Utilities |
![]() |
![]() |
Пакет исходных кодов SergCODE (Freeware) |
Все утилиты (командные файлы вида $utilname.cmd), будучи запущенными в режиме выдачи синтаксиса вызова (?, /? или -?), распечатывают необходимую для работы с ними информацию. Данный текст можно увидеть также, запустив из проводника Windows соответствующий командный батч (без параметров), — все команды за исключением $sysshutdown.cmd, $sysrestart.cmd, $syshibernate.cmd и $syslogoff.cmd (которые без параметров приступают к выполнению действия).
При желании реально применить какую-либо команду следует сначала изучить (в общих чертах) содержимое соответствующего батча. Все утилиты (а также большинство вспомогательных CMD-файлов пакета) поддерживают так называемый “режим непосредственного/вложенного вызова”. Он влияет на такие особенности поведения как: предварительная очистка вывода, подтверждение операции, подача звукового сигнала ошибки, заключительная пауза. (Смотрите устройство командных файлов утилит и примеров.)
Для работы утилит необходимо “прописать” в системе путь к папке CMD-Utilities, используя переменную среды PATH. Рекомендуется также определить глобально некоторые из основных утилитных $-переменных (перечислены в описании команды $UtilVars, на данной странице).
Команда | Наименование | Базируется на | Назначение (подробную информацию смотрите в синтаксисе вызова) | Задействуемые обязательные переменные окружения и файлы | Задействуемые необязательные переменные окружения и файлы |
$SqlTrans | Транслятор файловых SQL-скриптов | SQLCMD |
Трансляция файловых SQL-скриптов, а также выполнение команд и запросов (получение отчётов в виде простого текста). Скрипты (хранимые процедуры, например) можно транслировать как по-отдельности, так и группами, применяя шаблон файлового имени (например: $SqlTrans "*.sql"). Подобные действия следует оформлять в виде вспомогательных командных батчей (“наименование_действия.cmd”). Для удобного использования данную утилиту можно “интегрировать” в Проводник Windows, редактор EmEditor, файловый командер Far Manager и другие приложения. Смотрите страницу: Средства SQL (раздел SQL, содержит подробные разъяснения). Самым интересным примером применения $SqlTrans является организация так называемого SQL-проекта на базе файловых скриптов, для всех объектов базы данных: хранимых процедур, функций, представлений, таблиц и т.д. (В пакете имеются соответствующие примеры.)
Смотрите программные примеры SQL: SQL\Programming Samples. ВНИМАНИЕ!!! Утилита $SqlTrans предназначена для работы ТОЛЬКО в одном экземпляре, в отдельно взятый момент времени. Этот недостаток обусловлен тем, что команда SQLCMD обрабатывает не непосредственно исходные SQL-файлы, а временный файл $sql_script.sql в директории TEMP. (При одновременном запуске двух или более трансляций произойдёт “пересечение”.) |
$sql_server, $sql_database $oem_cp, TEMP $sql_settings.sql |
$sql_settings_script $sql_script_cp, $sql_report_cp $sqltrans.AdditionalParams $sqltrans.SkipConfirmation$sqltrans.SkipCompletionPause $sqltrans.ShowConnectionInfo |
$SqlUpload | Загрузка данных из текстовых файлов | BCP, $SqlTrans |
Данная утилита позволяет “загрузить” один или несколько текстовых файлов в соответственно указанные таблицы базы данных. Поддерживается также исполнение предварительного и заключительного SQL-скрипта. ВНИМАНИЕ!!! Не всегда удаётся “поймать” ошибку BCP, поэтому рекомендуется зрительно проверять текстовый вывод данной команды.
Смотрите программные примеры SQL (папка SQL\Programming Samples). |
$sql_server, $sql_database а также все обязательные переменные и файлы для $SqlTrans (если задействуется) |
$sql_uploading_cp, $sql_uploading_colsep $pre_upload.sql, $post_upload.sql а также все необязательные переменные и файлы для $SqlTrans (если задействуется) |
$Sql | Простейший интерактивный SQL из командной строки | SQLCMD | Команда выполняет вызов интерактивного режима SQLCMD, украшенный вспомогательной текстовой информацией. (Предназначено для вызова непосредственно из командной строки.) |
$sql_server, $sql_database |
|
Команда | Наименование | Базируется на | Назначение (подробную информацию смотрите в синтаксисе вызова) | Задействуемые обязательные переменные окружения и файлы | Задействуемые необязательные переменные окружения и файлы |
$WdkBuild | Вызов компилятора проекта WDK | BUILD, SETENV |
Данная утилита позволяет организовать приемлемую поддержку команд компиляции проекта WDK, приводимых в действие набором вспомогательных командных батчей. (Смотрите примеры из раздела DriverPrograms.) |
$wdk_root |
|
Команда | Наименование | Базируется на | Назначение (подробную информацию смотрите в синтаксисе вызова) | Задействуемые обязательные переменные окружения и файлы | Задействуемые необязательные переменные окружения и файлы |
$XAppDistr | Утилита автоматизированного копирования папки программы из так называемого “дистрибутива приложений” по так называемым “кэшам серверов приложений” | XCOPY, TASKKILL, OPENFILES |
Данная команда позволяет организовать в локальной сети так называемый “простейший сетевой дистрибутив”, программ, которые могут быть установлены методом XCOPY. По умолчанию используется так называемое “принудительное копирование” папки программы на сетевые ресурсы серверов (параллельным образом). Поддерживаются действия “распространия”, “обновления” и “удаления”. (Пример использования данного средства находится в папке Miscellaneous (Demo)\CMD\XCopy Application Distribution.) Данная утилита, решая в определённой степени вопрос сетевой инсталляции, оставляет открытой проблему так называемого “сетевого запуска”. Для централизованного управления запуском программ с серверов приложений возможно, в некоторых случаях, применить общедоступные сетевые папки ярлыков с относительными путями (на базе переменных окружения). Однако настоящим решением может стать разработка так называемого “сетевого стартера”, предоставляющего пользователю “аналог дерева ярлыков”, и умеющего выполнять предварительное кэширование программы (обновлённых файлов с сетевого ресурса) на локальном диске, перед стартом с него. |
|
$xappdistr.TaskKillExeName, $xappdistr.OpenFilesSubstring $xappdistr.PostUploadScriptFile $xappdistr.PostUploadScriptErrorAffectsFailedServersList $xappdistr.AskConfirmation |
$MAppDistr | Утилита “автоматизированного распространения” (Multiple Distribution) серии программ программ из “дистрибутива” по “кэшам серверов приложений” | $XAppDistr |
Команда предусмотрена для обработки всех дистрибутивных папок программ (с расширением .Distr по умолчанию) утилитой $XAppDistr в текущем каталоге дистрибутива. Осуществляется запуск вспомогательного батча, соответствующего действию, в каждом из подкаталогов. (Смотрите пример XCopy Application Distribution.) |
|
$mappdistr.IgnoreAbsentScripts |
Команда | Наименование | Базируется на | Назначение (подробную информацию смотрите в синтаксисе вызова) | Задействуемые обязательные переменные окружения и файлы | Задействуемые необязательные переменные окружения и файлы |
$KeyGen | Генерация криптографической пары открытого/закрытого ключа | SN |
Команда осуществляет несколько вызовов .NET-утилиты SN с целью генерации новой криптографической пары и извлекает информацию о полученном открытом ключе во всех возможных видах, поддерживаемых SN. (При уже имеющихся в текущей директории соответствующих криптографических файлах, вызов операции отвергается.) |
|
|
$CspInstall | Установка криптографической пары в CSP-контейнер | SN |
Команда размещает криптографическую пару в контейнере криптографической подсистемы с заданным именем из указанного файла (CSV, PFX и т.п.). |
|
|
$CspUninstall | Деинсталляция криптографической пары из CSP-контейнера | SN |
Команда удаляет из криптографической подсистемы CSP-контейнер с заданным именем. |
|
|
Команда | Наименование | Базируется на | Назначение (подробную информацию смотрите в синтаксисе вызова) | Задействуемые обязательные переменные окружения и файлы | Задействуемые необязательные переменные окружения и файлы |
$NDrvMap | Подключение сетевого диска | NET USE |
Данная простейшая утилита выполняет операцию подключения сетевого диска, снабжённую соответствующим сообщением подтверждения. (Команда предназначена для “обёртки” её во вспомогательный батч и “выводу” на него соответствующего ярлыка для удобного привода операции). |
|
|
$NDrvUnmap | Отключение сетевого диска | NET USE |
Данная простейшая утилита выполняет операцию отключения сетевого диска, снабжённую соответствующим сообщением подтверждения. (Команда предназначена для “обёртки” её во вспомогательный батч и “выводу” на него соответствующего ярлыка для удобного привода операции). |
|
|
Команда | Наименование | Базируется на | Назначение (подробную информацию смотрите в синтаксисе вызова) | Задействуемые обязательные переменные окружения и файлы | Задействуемые необязательные переменные окружения и файлы |
$EnVars | Вывод всех переменных среды окружения | SET |
Данная простейшая утилита выводит список всех переменных среды окружения. Ссылка на данную команду предоставляется из панели инструментов SergCODE (папка Utilities\Shortcuts\Toolbar). |
|
|
$PathVars | Вывод переменных маршрута | SET |
Данная простейшая утилита выводит значение переменных окружения PATH и PATHEXT. Ссылка на данную команду предоставляется из панели инструментов SergCODE (папка Utilities\Shortcuts\Toolbar). |
|
|
$UtilVars | Вывод основных утилитных переменных (пакет SergCODE) | SET |
Утилита выводит значение следующих переменных окружения: $ansi_cp, $oem_cp $sql_server, $sql_database $sql_script_cp, $sql_report_cp, $sql_uploading_cp, $sql_uploading_colsep $sql_settings_script, $sql_additional_params $wdk_root TEMP SergCODE_Root Именно эти переменные (часть из них) рекомендуется прописать в системе (как значения по умолчанию). Переменная SergCODE_Root должна содержать путь к папке SergCODE (без обратного слэша в конце). Ссылка на данную команду предоставляется из панели инструментов SergCODE (папка Utilities\Shortcuts\Toolbar). |
|
|
Команда | Наименование | Базируется на | Назначение (подробную информацию смотрите в синтаксисе вызова) | Задействуемые обязательные переменные окружения и файлы | Задействуемые необязательные переменные окружения и файлы |
$NewCon | Запуск новой консоли командного интерпретатора CMD | CMD |
Утилита предназначена для запуска новой консоли командной строки, в развёрнутом виде. Запущенная CMD-сессия имеет переменную $cmd_plain установленную в 1. (Все утилитные батчи в подобном окружении игнорируют предварительную очистку вывода и завершающую паузу.) Ссылка на данную команду предоставляется из панели инструментов SergCODE (папка Utilities\Shortcuts\Toolbar). |
|
|
Команда | Наименование | Базируется на | Назначение (подробную информацию смотрите в синтаксисе вызова) | Задействуемые обязательные переменные окружения и файлы | Задействуемые необязательные переменные окружения и файлы |
$SysShutdown | Выход из системы (выключение компьютера) | SHUTDOWN |
Данная простейшая утилита предназначена для инициирования операции закрытия системы, с выводом предупредительного сообщения. Имеется возможность задать “принудительный выход” (форсированный режим). Ссылка на данную команду предоставляется из панели инструментов SergCODE (папка Utilities\Shortcuts\Toolbar). |
|
|
$SysRestart | Перезагрузка компьютера | SHUTDOWN |
Данная простейшая утилита предназначена для инициирования операции перезагрузки компьютера, с выводом предупредительного сообщения. Имеется возможность задать “принудительный выход” (форсированный режим). Ссылка на данную команду предоставляется из панели инструментов SergCODE (папка Utilities\Shortcuts\Toolbar). |
|
|
$SysHibernate |
Ввод компьютера в спячку-“гибернацию” (со сворачиванием памяти на диск) — команда работает начиная с Windows Vista |
SHUTDOWN |
Данная простейшая утилита предназначена для инициирования операции так называемой системной “гибернации”, с выводом предупредительного сообщения. Имеется возможность задать “принудительный выход” (форсированный режим). Ссылка на данную команду предоставляется из панели инструментов SergCODE (папка Utilities\Shortcuts\Toolbar). |
|
|
$SysLogoff | Выход из текущего пользовательского профиля | SHUTDOWN |
Данная простейшая утилита предназначена для инициирования операции закрытия системного пользовательского профиля, с выводом предупредительного сообщения. Имеется возможность задать “принудительный выход” (форсированный режим). Ссылка на данную команду предоставляется из панели инструментов SergCODE (папка Utilities\Shortcuts\Toolbar). |
|
|
Наверх |
© Китаев С.Ю. |