首 页文章中心

Linux学习网

您的位置Linux学习网 > Linux程序开发 > 文章内容

LINUX 必学的是shell,sed,grep和正则表达式

作者:佚名  来源:不详  发布时间:2007-7-5 8:14:00
  如题目那句话,对于一个在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,否则该文件为空.这点大家要小心,容易毁坏数据.

  正确写法:

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

  这样就搞定,呵呵以后我会陆续将工作中碰到的例子贴上来,作为经验记录,常练回有收获的.

  另外,今天发现了OPERA9这个浏览器用得很爽,用户个性化不错,而且占用资源相对较少,打开网页速度也挺快的,又对OPERA9 VS IE,小测试了一把资源使用状况,哈哈,现在是见什么就想测试比较啦职业病:)

  发现:同时打开4个同样(比较庞大)的窗口,IE居然占内存110M,CPU使用率90%;OPERA 40多M,CPU 10%.也许不能充分说明问题,但一定程度上反映出了差别!~以后,使用浏览器的先后顺序为:OPERA9,FIREFOX,IE.IE不到写SPACE也完全可以躺着睡大觉了!
收藏本页到: 365Key | del.icio.us | | 添加到雅虎收藏+
  • 网站帮助 - 广告合作 - 网站地图