shell常见文本处理。(awk 替换换行符等)

1

文件里有如下行,我想将每行的回车符替换为逗号,并将所有行合并到一行,用awk或sed怎么写啊
TOP_COLUMN
TOP_MESSAGE
TOP_OPTIONS
TOP_TOPIC
TOP_VOTE
TOP_COLTYPE
 
awk '{{printf"%s,",$0}}'

sed ':a;N;$!ba;s#\n#,#g'
 
 
2

1. 原文档内容格式:

词组 拼音  次序
阿爸 a1'ba4  18137
阿昌族 a1'chang1'zu250849
阿斗 a1'dou3  42632
阿飞 a1'fei1  48603
阿富汗 a1'fu4'han43461
阿訇 a1'hong1  34432
阿拉伯数字 a1'la1'bo2'shu4'zi435937
阿拉伯语 a1'la1'bo2'yu330476
阿妈 a1'ma1  16220
阿门 a1'men2  47913
阿Q a1'qiu1  20845
阿司匹林 a1'si1'pi3'lin240294
阿嚏 a1'ti4  54643

 

2. 共3列内容,现在只提取第一列词表,并存入另一文件:

[html] view plain copy
 
  1. awk '{print $1}' ./CH_word_ls.txt <strong>></strong> ./out.txt  
其中 ./CH_word_ls.txt是输入文件名 

 

 

3. 如果想提取前两列,只需

 

[html] view plain copy
 
  1. awk '{print $1,$2}' ./CH_word_ls.txt <strong>></strong> ./out.txt  

 

4. 然后对文本进行去重并输出到文件CH_words:

sort out.txt | uniq > CH_words

 

posted @ 2018-06-19 19:45  Zeus~  阅读(2292)  评论(0编辑  收藏  举报