Курвостелла (Curvostella)

Утилиты командной строки

Папка: CMD-Utilities

Курвостелла (Curvostella)

Пакет исходных кодов SergCODE (Freeware) Пакет исходных кодов SergCODE (Freeware)

Все утилиты (командные файлы вида $utilname.cmd), будучи запущенными в режиме выдачи синтаксиса вызова (?, /? или -?), распечатывают необходимую для работы с ними информацию. Данный текст можно увидеть также, запустив из проводника Windows соответствующий командный батч (без параметров), — все команды за исключением $sysshutdown.cmd, $sysrestart.cmd, $syshibernate.cmd и $syslogoff.cmd (которые без параметров приступают к выполнению действия).

При желании реально применить какую-либо команду следует сначала изучить (в общих чертах) содержимое соответствующего батча. Все утилиты (а также большинство вспомогательных CMD-файлов пакета) поддерживают так называемый “режим непосредственного/вложенного вызова”. Он влияет на такие особенности поведения как: предварительная очистка вывода, подтверждение операции, подача звукового сигнала ошибки, заключительная пауза. (Смотрите устройство командных файлов утилит и примеров.)

Для работы утилит необходимо “прописать” в системе путь к папке CMD-Utilities, используя переменную среды PATH. Рекомендуется также определить глобально некоторые из основных утилитных $-переменных (перечислены в описании команды $UtilVars, на данной странице).

Утилиты SQL:

Команда Наименование Базируется на Назначение (подробную информацию смотрите в синтаксисе вызова) Задействуемые обязательные переменные окружения и файлы Задействуемые необязательные переменные окружения и файлы
$SqlTrans Транслятор файловых SQL-скриптов SQLCMD

Трансляция файловых SQL-скриптов, а также выполнение команд и запросов (получение отчётов в виде простого текста). Скрипты (хранимые процедуры, например) можно транслировать как по-отдельности, так и группами, применяя шаблон файлового имени (например: $SqlTrans "*.sql"). Подобные действия следует оформлять в виде вспомогательных командных батчей (“наименование_действия.cmd). Для удобного использования данную утилиту можно “интегрировать” в Проводник Windows, редактор EmEditor, файловый командер Far Manager и другие приложения.

Смотрите страницу: Средства SQL (раздел SQL, содержит подробные разъяснения).

Самым интересным примером применения $SqlTrans является организация так называемого SQL-проекта на базе файловых скриптов, для всех объектов базы данных: хранимых процедур, функций, представлений, таблиц и т.д. (В пакете имеются соответствующие примеры.)

Смотрите программные примеры SQL: SQL\Programming Samples.
Смотрите примеры использования утилит: SQL\Usage of CMD-Utilities.

ВНИМАНИЕ!!! Утилита $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\Usage of CMD-Utilities).

$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


Утилиты WDK (Windows Driver Kit):

Команда Наименование Базируется на Назначение (подробную информацию смотрите в синтаксисе вызова) Задействуемые обязательные переменные окружения и файлы Задействуемые необязательные переменные окружения и файлы
$WdkBuild Вызов компилятора проекта WDK BUILD, SETENV

Данная утилита позволяет организовать приемлемую поддержку команд компиляции проекта WDK, приводимых в действие набором вспомогательных командных батчей. (Смотрите примеры из раздела DriverPrograms.)

$wdk_root

Утилиты автоматизированного распространения приложений по списку серверов методом XCOPY:

Команда Наименование Базируется на Назначение (подробную информацию смотрите в синтаксисе вызова) Задействуемые обязательные переменные окружения и файлы Задействуемые необязательные переменные окружения и файлы
$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

Утилиты “строгого имени” (Strong Name):

Команда Наименование Базируется на Назначение (подробную информацию смотрите в синтаксисе вызова) Задействуемые обязательные переменные окружения и файлы Задействуемые необязательные переменные окружения и файлы
$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).



Утилиты CMD-консоли:

Команда Наименование Базируется на Назначение (подробную информацию смотрите в синтаксисе вызова) Задействуемые обязательные переменные окружения и файлы Задействуемые необязательные переменные окружения и файлы
$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).





Наверх

© Китаев С.Ю.