我有一个命令 (snmptrap),要求输入字符串用单引号引起来。在 bash 脚本中,运行此命令,我需要插入一个变量并对其进行扩展。我尝试了多种变化,但都无济于事。我也搜索了几个网站,找到了类似的情况,但没有帮助。
DT=`date '+%a %b %d, %Y at %H:%M:%S'`
Dev="1#.##.##.147"
DESTINATION=$Dev
VAR3="DATA_TRANSFER_NAVISTOR - EBR -test "$DT" - ERRORLEVEL 111."
/usr/bin/snmptrap -v 1 -c public $DESTINATION 1.3.6.1.4.1.791 10.36.1.177 6 200 '' \
.1.3.6.1.4.1.791.200.1 s 'NS_Monitor' \
.1.3.6.1.4.1.791.200.2 s 'NAVISTOR' \
.1.3.6.1.4.1.791.200.3 s '\"$VAR3\"' \
.1.3.6.1.4.1.791.200.4 s 'CRITICAL' \
.1.3.6.1.4.1.791.200.5 s 'hostname=na900618-sal.delhaize.com'
$VAR3
$[$VAR3]
"$VAR3"
\$VAR3
\"$VAR3\"
答案1
一位同事说只需将单引号替换为双引号,这样 var3 行就是:.1.3.6.1.4.1.791.200.3 s "$VAR3" \
这有效。