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用法)