如何从unix中的.dat文件中读取每一行?

mus*_*123 1 unix linux

trade.dat是我的文件,由数据行组成.

我必须用逗号(,)连接该文件的每一行

请帮帮我

pax*_*blo 7

如果你的意思是在每行的末尾添加一个逗号:

sed 's/$/,/' <oldfile >newfile
Run Code Online (Sandbox Code Playgroud)

如果你的意思是将所有行连接成一行,用逗号分隔每行:

awk '{printf "%s,",$0}' <oldfile >newfile
Run Code Online (Sandbox Code Playgroud)

或者更正确的一个没有尾随逗号(感谢,@ hacker,用于指出错误):

awk 'BEGIN {s=""} {printf "%s%s",s,$0;s=","}' <oldfile >newfile
Run Code Online (Sandbox Code Playgroud)

如果您想要shell变量中任何一个的输出,只需使用该$()构造,例如:

str=$(awk 'BEGIN {s=""} {printf "%s%s",s,$0;s=","}' <oldfile)
Run Code Online (Sandbox Code Playgroud)

我觉得最好使用$()而不是反引号,因为它允许我嵌套命令,反引号不能做.