Linux下使用xargs将多行文本转换成一行并用tr实现逗号隔开

Posted Jim

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux下使用xargs将多行文本转换成一行并用tr实现逗号隔开相关的知识,希望对你有一定的参考价值。

准备:

cat test.txt
1
3
4

示例:

cat test.txt | xargs
1 3 4

可以看出得到的字符串为空格隔开的。

再把上面的字符串用逗号隔开,可以使用tr命令进行空格的替换

cat test.txt | xargs | tr   ,

不过tr命令只能替换单个字符,多个字符无法实现。

使用sed实现多个字符串的替换:

cat test.txt | xargs | sed /s/ /,/g

sed可以替换多个字符串,可以弥补tr的不足,后面g表示匹配多个。

 

总结:

替换和合并命令有很多,主要是看你怎么去解这道题,这里主要是基于xargs和tr实现的,当然,还可以使用sed命令去替换,sed命令支持多个字符串。

 

参考:

http://man.linuxde.net/xargs(xargs用法)

http://man.linuxde.net/tr(tr用法)

http://man.linuxde.net/sed(sed用法)

http://bbs.chinaunix.net/thread-1631249-1-1.html

以上是关于Linux下使用xargs将多行文本转换成一行并用tr实现逗号隔开的主要内容,如果未能解决你的问题,请参考以下文章

Linux-xargs命令

Linux命令学习之xargs命令

Linuxlinux下xargs命令

linux命令--xargs的使用

Linux命令-xargs

linux xargs命令