[comment]: # aside: 8

[comment]: # ({e7434dce-e8144915})
# JS

[comment]: # ({/e7434dce-e8144915})

[comment]: # ({4f9699bb-b0613168})
### Обзор

`zabbix_js` — это утилита командной строки, которую можно использовать для тестирования встроенных скриптов.

Эта утилита выполнит пользовательский скрипт со строковым параметром и выведет результат.
Скрипты выполняются с использованием встроенного механизма скриптов Zabbix.

В случае ошибок компиляции или выполнения `zabbix_js` выведет сообщение об ошибке в stderr и завершит работу с кодом `1`.

[comment]: # ({/4f9699bb-b0613168})

[comment]: # ({9f28ffae-de3fe561})
### Использование

```default
zabbix_js -s script-file -p input-param [-l log-level] [-t timeout]
zabbix_js -s script-file -i input-file [-l log-level] [-t timeout]
zabbix_js -h
zabbix_js -V
```

`zabbix_js` принимает следующие параметры командной строки:

```default
-s, --script script-file          Укажите имя файла скрипта для выполнения
                                  Если в качестве имени файла указано "-", скрипт будет прочитан из stdin
-i, --input input-file            Укажите имя файла с входными данными
                                  Содержимое будет передано скрипту в качестве значения
                                  Взаимоисключающий с -p
                                  Если в качестве имени файла указано "-", скрипт будет прочитан из stdin
-p, --param input-param           Укажите входной параметр: переменную, которая будет передана скрипту в качестве значения
                                  Взаимоисключающий с -i
-l, --loglevel log-level          Укажите уровень журналирования
                                  Диапазон: 0-5
-t, --timeout timeout             Укажите тайм-аут в секундах
                                  Допустимый диапазон: 1-600 секунд (по умолчанию: 10 секунд)
-h, --help                        Показать справочную информацию
-V, --version                     Показать номер версии
-w <webdriver url>                Включает мониторинг браузера
```

### Примеры:

##### Пример 1: Выполнение скрипта с переменной, содержащей значение

Скрипт (`script-file.js`):

```default
return value;
```

Использование:

```default
zabbix_js -s script-file.js -p example_value
```

Вывод: `example_value`

##### Пример 2: Выполнение скрипта с файлом, содержащим входные данные

Файл со скриптом (`script-file.js`):

```default
return value;
```

Файл с входными данными (`example.txt`):

```default
Пример входных данных из файла
```

Использование:

```default
zabbix_js -s script-file.js -i example.txt
```

Вывод: `Пример входных данных из файла`

##### Пример 3: Выполнение скрипта с вводом, прочитанным из stdin

Файл со скриптом (`script-file.js`):

```default
return value;
```

Использование:

```default
zabbix_js -s script-file.js -i -
```

Ввод (stdin):

```default
Пример ввода из stdin
```

Вывод: `Пример ввода из stdin`

[comment]: # ({/9f28ffae-de3fe561})
