如何将文件中的文本重新格式化为另一个方向?

kas*_*hef 4 awk text-formatting

我有当前格式的表格:

Lead:Arrow1:Arrow2:Arrow3
Follow:Arrow4:Arrow5:Arrow6:Arrow7:Arrow8:Arrow9
Run Code Online (Sandbox Code Playgroud)

我想把它变成

Lead
Arrow1
Arrow2
Arrow3
Follow
Arrow4
Arrow5
Arrow6
Arrow7
Arrow8
Arrow9
Run Code Online (Sandbox Code Playgroud)

我试过awk

$(awk -F":" '/Lead/ {print NF-1}' $f)
$(awk -F":" '/Follow/ {print NF-1}' $f)
Run Code Online (Sandbox Code Playgroud)

但它没有用。我怎样才能做到这一点awk或任何其他方法?

小智 8

您可以tr按如下方式使用:

<file tr ":" "\n"

Lead
Arrow1
Arrow2
Arrow3
Follow
Arrow4
Arrow5
Arrow6
Arrow7
Arrow8
Arrow9
Run Code Online (Sandbox Code Playgroud)

awk如下:

<file awk '{gsub(/:/,"\n")}1'
Lead
Arrow1
Arrow2
Arrow3
Follow
Arrow4
Arrow5
Arrow6
Arrow7
Arrow8
Arrow9
Run Code Online (Sandbox Code Playgroud)

  • 很好,使用 GNU awk 你也可以写 `awk -v RS='[:\n]' 1` (2认同)