在UNIX中基于分隔符拆分行

Tej*_*eja 8 unix string 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
Run Code Online (Sandbox Code Playgroud)

twa*_*erg 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'
Run Code Online (Sandbox Code Playgroud)


Joh*_*Jr. 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
Run Code Online (Sandbox Code Playgroud)

  • `-d`不是OS X上`xargs`的选项.只是想我会添加...... (2认同)