【发布时间】:2016-05-25 05:44:16
【问题描述】:
我的last question 得到了很好的回应。这个想法是从命令行处理 N 个输入,将前 9 个保存到变量中,然后创建一个包含 10 的字符串。
我发现这是最简单的解决方案。
var1="$1"
var2="$2"
var3="$3"
var4="public"
var5="$5"
var6="''"
var7="$7"
var8="$8"
var9="$9"
var10="$(shift 9; IFS=""; echo "$*")"
echo snmptrap $var1 $var2 $var3 $var4 $var5 $var6 $var7 $var8 $var9 "$var10"
snmptrap $var1 $var2 $var3 $var4 $var5 $var6 $var7 $var8 $var9 "$var10"
输出看起来像这样......
./snmptas -v 2c -c "" 9.48.85.57 "" 1.3.6.1.4.1.2.6.201.3 s s ABC DDEF EFFF
snmptrap -v 2c -c public 9.48.85.57 '' 1.3.6.1.4.1.2.6.201.3 s s ABCDDEFEFFF
但我想要这种形式的 $var10
“ABC DDEF EFFF”。
这需要改变。它正在消除空间。
var10="$(shift 9; IFS=""; echo "$*")"
如何使 var10 = "ABC DDEF EFFF"?
谢谢
【问题讨论】:
标签: string bash whitespace quote