Использование
Синтаксис
Для правильного функционирования команд необходимо соблюдать правильный синтаксис при их форматировании, при этом структура команды может включать в себя префикс, контекст, аргументы, параметры и т. д. Ниже приведен общий синтаксис, используемый в интерфейсе eShell.
[<prefix>] [<command path>] <command> [<arguments>]
Пример (команда активирует защиту документов) SET DEVICE DOCUMENT USE ENABLED |
SET — префикс
DEVICE DOCUMENT — путь к конкретной команде, контекст, к которому данная команда относится.
USE — непосредственно команда
ENABLED — аргумент для команды
Используйте ? как аргумент для отображения синтаксиса команды. Например, USE ? выведет синтаксис команды USE. Для теста выполните команду DEVICE DOCUMENT USE ? из корневого уровня и ознакомьтесь с синтаксисом.
СИНТАКСИС
[get] use
ОПЕРАЦИИ
get — показать состояние всех модулей защиты
Видно, что конструкция [get] заключена в скобки. Это указывает на то, что префикс get используется по умолчанию для команды use. Это означает, что при выполнении команды use без указания префикса используется префикс по умолчанию (в данном случае префикс get use). Использование команд без префиксов позволяет сэкономить время на ввод данных. Обычно get является префиксом по умолчанию для большинства команд, но нужно точно знать префикс по умолчанию для конкретной команды и иметь уверенность в том, что он соответствует задаче, которую необходимо выполнить.
В командах не учитывается регистр. Можно использовать как прописные, так и строчные буквы, и это не влияет на их выполнение. |
Префикс/операция
Префикс — это операция. Префикс GET предоставляет сведения о том, как сконфигурирована функция ESET Server Security, или отображает ее состояние. Например, команда FEATURES COMPUTER GET STATUS-REAL-TIME выводит текущее состояние защиты модуля реального времени. Префикс SET настраивает функцию или изменяет ее состояние. Например, команда FEATURES COMPUTER SET STATUS-REAL-TIME ENABLED активирует защиту в реальном времени, особенно если предыдущее состояние было «Отключено».
Это префиксы, которые позволяет использовать eShell. Команда может поддерживать или не поддерживать какие-либо из следующих префиксов.
GET |
возвращает текущий параметр или состояние |
|---|---|
SET |
задает значение или состояние |
SELECT |
выбирается элемент |
ADD |
добавляется элемент |
REMOVE |
удаляется элемент |
START |
запускается действие |
STOP |
останавливается действие |
IMPORT |
выполняется импорт из файла. |
EXPORT |
выполняется экспорт в файл. |
RESUME |
возобновляется действие |
PAUSE |
приостанавливается действие. |
RESTORE |
восстанавливает параметры/объект/файл по умолчанию |
SEND |
отправляется объект или файл. |
CLEAR |
удаляет все элементы или файлы |
Такие префиксы, как GET и SET, используются со многими командами, но в некоторых командах (например, EXIT) префикс не используется. |
Путь команды/контекст
Команды размещаются в контекстах, которые образуют древовидную структуру. Верхний уровень древовидной структуры является корневым. При запуске eShell открывается именно корневой уровень.
eShell>
Можно либо выполнять команды непосредственно здесь или вводить имя контекста, чтобы перемещаться по древовидной структуре. Например, при вводе TOOLS ваше текущее расположение изменяется на контекст TOOLS, и eShell отобразит все команды и подконтексты, доступные в текущем контексте.

Желтым цветом обозначены команды, которые можно выполнять, а серым — подчиненные контексты, в которые можно войти. В подчиненном контексте содержатся дальнейшие команды.
Если нужно вернуться на более высокий уровень, следует использовать команду .. (две точки).
Допустим, что мы находимся здесь. eShell features computer> Введите .. для перехода вверх на один уровень, на этот: eShell features> |
Если же необходимо вернуться на корневой уровень с уровня eShell features computer> (на два уровня ниже корневого уровня), просто введите .. .. (две точки, пробел, еще две точки). Это позволит перейти на два уровня вверх, то есть к корневому уровню в данном случае. Чтобы вернуться прямо на корневой уровень с любого уровня (на любой глубине древовидной структуры контекстов), используйте обратную косую черту \. Если нужно перейти к какому-либо конкретному контексту верхнего уровня, используйте соответствующее число команд .. для перехода на необходимый уровень, а в качестве разделителя используйте пробел. Например, если нужно подняться на три уровня вверх, введите .. .. ..
Путь указывается относительно текущего контекста. Если команда содержится в текущем контексте, путь вводить не нужно. Например, чтобы проверить состояние защиты файловой системы в реальном времени, введите:
FEATURES COMPUTER GET STATUS-REAL-TIME — при нахождении в корневом контексте (командная строка показывает eShell>)
GET STATUS-REAL-TIME - If you are in the FEATURES COMPUTER context (command line shows eShell features computer>)
.. .. FEATURES COMPUTER GET STATUS-REAL-TIME — чтобы остаться в текущем контексте и выполнить постороннюю команду за его пределами. Например, при нахождении в контексте CLUSTER SETTINGS (в командной строке отображается eShell cluster settings>).
Можно использовать одну . (точку) вместо двух .., так как одна точка является сокращением для двух. Или же используйте обратную косую черту \ независимо от того, на каком уровне вы находитесь в контексте.
. . FEATURES COMPUTER GET STATUS-REAL-TIME — чтобы остаться в текущем контексте и выполнить постороннюю команду за его пределами. Например, при нахождении в контексте CLUSTER SETTINGS (в командной строке отображается eShell cluster settings>). Или для получения того же результата выполните: \ FEATURES COMPUTER GET STATUS-REAL-TIME |
Аргумент
Аргумент — это действие, выполняемое для определенной команды. Например, команду CLEAN-LEVEL (расположена в COMPUTER REAL-TIME ENGINE) можно использовать со следующими аргументами:
rigorous — всегда исправлять обнаружение
safe — исправлять обнаружение, если это безопасно, в ином случае не вмешиваться
normal — исправлять обнаружение, если это безопасно, в ином случае спрашивать
none — всегда спрашивать у конечного пользователя
Другой пример: аргументы ENABLED и DISABLED, которые включают и отключают определенную функцию.
Сокращенная форма/краткие команды
eShell позволяет сокращать контексты, команды и аргументы (при условии, что аргумент является параметром или альтернативным вариантом). Невозможно сократить префикс или аргумент, который является конкретным значением, таким как число, имя или путь. Вы можете использовать цифры1 и 0вместо аргументов включения и выключения.
features computer set status-real-time disabled => fea com set status-rea 0 features computer set status-real-time enabled => fea com set status-rea 1 |
Примеры краткой формы
features computer set status-real-time enabled => fea com set status-rea en scans exclusions add detection-excludes object C:\path\file.ext => sca excl add det obj C:\path\file.ext scans exclusions remove detection-excludes 1 => sca excl rem det 1 |
Если две команды или контекста начинаются с одних и тех же букв (например, ADVANCED и AUTO-EXCLUSIONS) и вы введете AA в качестве сокращенной команды, eShell не сможет решить, какую из этих двух команд необходимо выполнить. Поэтому на экран будет выведено сообщение об ошибке и список команд, начинающихся на букву A, из которого можно выбрать необходимое:
eShell>a
Не является уникальной следующая команда: a
В контексте COMPUTER доступны следующие подчиненные контексты:
ADVANCED
AUTO-EXCLUSIONS
При добавлении одной или нескольких букв (например, AD вместо просто A) eShell введет подчиненный контекст ADVANCED, так как он теперь является уникальным. То же самое касается сокращенных команд.
Чтобы команда выполнялась надлежащим образом, рекомендуется не сокращать команды, аргументы и т. д., а использовать их полную форму. В этом случае решение eShell будет выполнено именно так, как нужно, и удастся избежать нежелательных ошибок. Это особенно верно для пакетных файлов/сценариев. |
Автозаполнение
Эта новая функция была представлена в eShell 2.0, и она очень похожа на функцию автозаполнения в командной строке Windows. В командной строке Windows заполняются пути к файлам, а в eShell заполняются команды, контекст и имена операций. Заполнение аргументов не поддерживается.
Чтобы при обычном вводе команды выполнить автозаполнение или просмотреть доступные варианты, нажмите клавишу TAB.
Чтобы пролистать варианты назад, нажмите клавиши SHIFT + TAB. Одновременное использование сокращенной формы и автоматического заполнения не поддерживается. Используйте или одно, или другое.
Например, если при вводе computer real-time additional нажать клавишу TAB, ничего не произойдет. Эту команду лучше вводить так: введите com, а затем TAB, чтобы завершить computer, затем введите real и нажмите TAB, а затем введите add и опять нажмите TAB, введите Войти. Введите on и снова нажмите TAB. Вы можете просмотреть все доступные варианты: on-execute-ah, on-execute-ah-removable, on-write-ah, on-write-archive-default и т. д.
Псевдонимы
Псевдоним — это альтернативное название, которое может использоваться для выполнения команды (при условии, что этой команде присвоен псевдоним). Есть несколько псевдонимов по умолчанию:
(global) close — выход
(global) quit — выход
(global) bye — выход
warnlog — события журнала инструментов
virlog — обнаружения журнала инструментов
(global) — команду можно использовать где угодно, независимо от текущего контекста. Одной команде можно назначить несколько псевдонимов. Например, команда EXIT имеет псевдонимы CLOSE, QUIT и BYE. Для выхода из eShell можно использовать непосредственно команду EXIT или любой из ее псевдонимов.
Псевдоним VIRLOG является псевдонимом команды DETECTIONS в контексте TOOLS LOG. Таким образом, команда DETECTIONS доступна из корневого контекста ROOT, что делает ее более доступной (не нужно вводить контекст TOOLS, а затем контекст LOG, и выполнять ее непосредственно в ROOT).
eShell позволяет определять псевдонимы. Команду ALIAS можно найти в контексте UI ESHELL.
Защитить параметры паролем
Параметры ESET Server Security можно защитить паролем. Пароль можно задать с помощью графического интерфейса или в eShell с помощью команды set ui access lock-password.
Для выполнения некоторых команд (например, тех, что изменяют параметры или данные) этот пароль понадобится вводить в интерактивном режиме. Если вы планируете работать в eShell длительное время и не желаете постоянно вводить пароль, решение eShell может запомнить его. Для этого нужно воспользоваться командой set password (выполняется из root). После этого пароль будет вводиться автоматически при каждом выполнении команды, для которой он требуется. Программа eShell помнит пароль, пока вы не вышли из нее. Это значит, что команду set password при запуске нового сеанса нужно будет выполнить еще раз (если нужно, чтобы решение eShell запомнило пароль).
Руководство и справка
При выполнении команды GUIDE или HELP на экран выводится окно первого запуска, в котором объясняется использование eShell. Эта команда доступна в контексте ROOT (eShell>).
История команд
eShell хранит журнал выполненных ранее команд. Это распространяется только на текущий интерактивный сеанс eShell. После завершения сеанса работы eShell журнал команд удаляется. Для перехода по журналу используйте клавиши со стрелками вверх и вниз. Обнаружив нужную команду, можно выполнить ее повторно или внести в нее изменения, причем не нужно вводить заново всю команду целиком.
EXIT / CLOSE / QUIT / BYE
Для того чтобы закрыть eShell или выйти из этого интерфейса, можно воспользоваться любой из этих команд (EXIT, CLOSE, QUIT или BYE).