在UNIX中基于分隔符拆分行

时间:2012-05-17 19:11:31

标签: string unix split

我有一些SQL查询返回的数据,如下所示。我正在尝试根据分隔符分隔行并将其发送到新行。如何在UNIX中执行此操作..我试过使用shell脚本但无法通过...

ALB|1001|2012-04-15 ALB|1001|2012-04-14 ALB|1001|2012-04-16 ALB|1001|2012-04-17


ALB|1001|2012-04-15
ALB|1001|2012-04-14 
ALB|1001|2012-04-16 
ALB|1001|2012-04-17

2 个答案:

答案 0 :(得分:20)

对于该特定示例,tr ' ' '\n' < file应该起作用:

echo "ALB|1001|2012-04-15 ALB|1001|2012-04-14 ALB|1001|2012-04-16 ALB|1001|2012-04-17" | tr ' ' '\n'

答案 1 :(得分:9)

xargs是一个简单的单个程序,您可以使用它来执行此操作,如:

$ echo "ALB|1001|2012-04-15 ALB|1001|2012-04-14 ALB|1001|2012-04-16 ALB|1001|2012-04-17"|xargs -d' ' -n1
ALB|1001|2012-04-15
ALB|1001|2012-04-14
ALB|1001|2012-04-16
ALB|1001|2012-04-17