Bashで、文字列の文字列を改行文字(\ n)に置き換えます。

Bashで、文字列の文字列を改行文字(\ n)に置き換えます。

私は次のコマンドを試しました。

[silas@mars 11]$ string=xyababcdabababefab
[silas@mars 11]$ echo ${string/abab/"\n"}
xy\ncdabababefab
[silas@mars 11]$

また、「\n」を「\n」と \n に置き換えようとしました。 AWKやsedは使用できません(宿題の練習の一部であり、教師はこの特定の練習ではこれを許可しません)。

ベストアンサー1

ANSI C スタイルのエスケープシーケンスを使用して$'\n'改行を表します。

$ string=xyababcdabababefab

$ echo "${string/abab/$'\n'}"
xy
cdabababefab

またはzsh単に使用してください\n

% string=xyababcdabababefab

% echo "${string/abab/\n}"
xy
cdabababefab

おすすめ記事