我有两个变量,多行。
VAR1="1
2
3
4"
VAR2="ao
ad
af
ae"
我想要
VAR3="1ao
2ad
3af
4ae"
我知道我可以通过以下方式实现:
echo "$VAR1" > /tmp/order
echo "$VAR2" | paste /tmp/order -
但没有临时文件可以做什么?
答案 0 :(得分:21)
paste <(echo "$VAR1") <(echo "$VAR2") --delimiters ''
答案 1 :(得分:2)
你可以说:
$ 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