Bashvariables串联

愚蠢的问题毫无疑问,我想添加一个variables的中间variables,所以例如在PHP中,我会这样做:

$mystring = $arg1 . '12' . $arg2 . 'endoffile'; 

所以输出可能是20121201endoffile ,我怎样才能在一个Linux bash脚本中实现相同?

尝试这样做,在bash中没有特殊的字符连接:

 mystring="${arg1}12${arg2}endoffile" 

说明

如果你没有放置括号,你会问bash连接$arg112 + $argendoffile (我猜这不是你问的),如下面的例子:

 mystring="$arg112$arg2endoffile" 

括号是需要的variables的分隔符 。 不需要时,可以使用或不使用。

另一种scheme

(便携性较低:需要bash > 3.1)

 $ arg1=foo $ arg2=bar $ mystring="$arg1" $ mystring+="12" $ mystring+="$arg2" $ mystring+="endoffile" $ echo "$mystring" foo12barendoffile 

http://mywiki.wooledge.org/BashFAQ/013