отправить параметр в команду оболочки - PullRequest
0 голосов
/ 28 июня 2018

Я новичок в Linux, поэтому, пожалуйста, помогите мне. Я использую ModemManager в Ubuntu 18.04LTS (Srv1) с подключенным модемом GSM. Моя задача состоит в том, чтобы при некоторых действиях триггера на мониторе сервера zabbix запустил скрипт ssh на Srv1 и отправил SMS администратору. Вот код:

#!/bin/bash
v1=$1
v2=$2
count=$( cat countmess)
count=$((count+1))
//textt="$v1 have issue $v2"
sshpass -p "12345678" ssh -o StrictHostKeyChecking=no monitor@192.168.29.190 sudo mmcli -m 1 --messaging-create-sms="text='$(v1) have issue $(v2)',number='+8412345678'"
sshpass -p "12345678" ssh -o StrictHostKeyChecking=no monitor@192.168.29.190 sudo mmcli -s $count --send exit
rm -f countmess
echo "$count" >> countmess
exit

Звоните: ./sms_script.sh abc check sh файл получает 2 аргумента v1 в качестве имени хоста (abc) и v2 в качестве имени триггера (проверка). Затем он считывает переменную счетчика из файла countmess. Проблема здесь в команде:

> sudo mmcli -m 1 --messaging-create-sms="text='$(v1) have issue $(v2)',number='+8412345678'"

возвращает ошибку:

ошибка: невозможно проанализировать строку свойств: «Неожиданный контент (есть проверка номера, номер = + 8412345678) после значения»

Пожалуйста, покажи мне, как это исправить. извините за мой плохой английский

1 Ответ

0 голосов
/ 17 сентября 2018

В вашем скрипте вызовите v1 и v2 Вот так:

sudo mmcli -m 1 --messaging-create-sms="text='$v1 have issue $v2',number='+8412345678'"

...