向分隔文件添加新行

向分隔文件添加新行

所以我在该文件中有一个文件名 test.txt 我有大约 20 行文本,由管道 | 分隔。例子:

John|freshman|seatle|math|4|fulltime
Bob|senior|Tacoma|biology|4|part-time

我想为第 4 号之后的每条记录制作 2 行,例如

John|freshman|seatle|math|
4|full-time
Bob|senior|Tacoma|biology|
4|part-time 

ETC..

答案1

你可以使用sed

sed -i 's/|4|/|\n4|/' file.txt

这将替换|4||\n4|(即竖线、换行符,然后4|)。

答案2

如果您的号码4始终位于第五字段,那么awk您可以添加换行符:

$ awk 'BEGIN{FS=OFS="|"}$5="\n"$5' file
John|freshman|seatle|math|
4|fulltime
Bob|senior|Tacoma|biology|
4|part-time

相关内容