2 john jian John_jian 于 2017.09.12 09:42 提问

cat怎么单行显示文件内容?

请问各路大神,在linux中cat怎么单行显示目标文件的内容?

2个回答

louishu_hu
louishu_hu   2017.09.12 10:19
已采纳

cat file |xargs
请采纳,谢谢

John_jian
John_jian 谢谢
2 个月之前 回复
qiangyouming
qiangyouming   2017.10.24 22:27

去掉文件中的换行符
(1)tr命令的操作是针对文件的操作,它把整个文本当做操作的对象,所以可以直接去除文件中的换行符
tr '\n' ' ' < file
(2)sed的操作对象是行.而作为行分割符号的回车符,本身是不属于行的.所以sed中必须加上N命令,把下一行的内容添加到当前的pattern space中,这样实际上是把相邻的2行合并了.下一次仍然是先n,再p,再N,开始新的轮回:
cat file | sed 'N;s/\n/ /'
所以上面的语句是不能把文件内容合并为一行的,到底该怎么写,我暂时没有想到,呵呵
(3)直接用awk
awk '{printf("%s ",$0)}' file
(4)当然,用echo也是可以的:
while read line;do echo -n "$line"; done < awk_help.txt, 这样,可以把awk_help.txt的内容合并为一行
sed -e "s#[/r][/r][/n]#[/r][/n]#g" file

Csdn user default icon
上传中...
上传图片
插入图片