如何在bash中结合两个可变的列

我有两个variables,多行。

VAR1="1 2 3 4" VAR2="ao ad af ae" 

我想得到

 VAR3="1ao 2ad 3af 4ae" 

我知道我可以做到这一点:

 echo "$VAR1" > /tmp/order echo "$VAR2" | paste /tmp/order - 

但有没有办法做没有临时文件?

Solutions Collecting From Web of "如何在bash中结合两个可变的列"

paste <(echo "$VAR1") <(echo "$VAR2") --delimiters ''

你可以说:

 $ VAR3=$(paste <(echo "$VAR1") <(echo "$VAR2")) $ echo "$VAR3" 1 ao 2 ad 3 af 4 ae 

目前还不清楚是否在结果数组中有空格。 你的例子工作将包含空格,在上面的情况。

如果你不需要空格,即1ao而不是1 ao ,那么你可以说:

 $ VAR3=$(paste <(echo "$VAR1") <(echo "$VAR2") -d '') $ echo "$VAR3" 1ao 2ad 3af 4ae