关于Linux下的shell,sed,grep,正则表达式

  如题目那句话,对于一个在Linux工作的人来说,shell,sed,grep,Python等的东西是非学不可的,另外就是正则表达式,不说精通,了解很多基本用法后会使工作效率成倍的提高!~

  就比如今天的一个操作,对于一个文件夹下所生成的几个类别特征项文件,只需要在第一行末,接一个空格,加上该类特征词数,均为300,(原来程序没有写入,可以再改C++程序重写),这样意味着重新训练一边50W文件的库,时间约为1小时.如果直接用sed 来做会简单得多!~

  sed "1 s/$/ 300/" filename

  这就是单个文件第一行末尾替换,既追加300的方式.然而一个一个做显然比较愚蠢,直接再加上shell编程的方法:

  for i in ./* ;do sed "1 s/$/ 300/" $i >$i;done

  注意:这样好象是不错,但是对于sed来说可能是缓冲区的原因,不能将$i直接再写回$i,否则该文件为空.这点大家要小心,容易毁坏数据.

 
【内容导航】  
第1页:
关于Linux下的shell,sed,grep,正则表达式   第2页:关于Linux下的shell,sed,grep,正则表达式  

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wzwjdy.html