8

我有一些由一些 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
4

2 回答 2

21

对于那个特定的例子,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'
于 2012-05-17T19:17:32.573 回答
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
于 2012-05-17T19:19:53.487 回答