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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM