複数行の 2 つの変数があります。
VAR1="1
2
3
4"
VAR2="ao
ad
af
ae"
私は手に入れたい
VAR3="1ao
2ad
3af
4ae"
私はそれができることを知っています:
echo "$VAR1" > /tmp/order
echo "$VAR2" | paste /tmp/order -
しかし、一時ファイルなしで行う方法はありますか?
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