2 つの Unix 変数の間に改行文字 (\n) を追加するにはどうすればよいですか?
以下を試しましたが、別々の行ではなく 1 行で印刷されます。
h=hello
w=world
c="$h"$'\n'"$w"
echo $c
Output: hello world
答え1
解決策は機能しますが、$c
希望どおりに展開するには echo ステートメントで引用符を付ける必要があります。
このような:
h=hello
w=world
c="$h"$'\n'"$w"
echo "$c"
しかし、これはほぼ間違いなく XY 問題です。最終的に何を達成する必要があるのでしょうか?
現状では、次のようにする方がはるかに良いでしょう:
h=hello
w=world
printf '%s\n' "$h" "$w"
-e
あるいは、エコーするオプションを使用することもできます:
h=hello
w=world
c="${h}\n${w}"
echo -e "$c"