+ -
当前位置:首页 → 问答吧 → 求助:sed怎么替换中文字符?

求助:sed怎么替换中文字符?

时间:2011-06-17

来源:互联网

本帖最后由 d63hbz 于 2011-06-17 23:59 编辑

我准备从深圳证券交易所的站点(http://disclosure.szse.cn/m/drgg.htm)搜集公司公告信息,用shell过滤信息:
命令中碰到了个点符号(·),不知道怎么过滤,请各位大侠指教。我的不工作的命令是:
  1. wget http://disclosure.szse.cn/m/drgg.htm
  2. mv drgg.htm sz

  3. cat sz  | sed "s/<td/\n<td/g" | grep target  | sed "s/^.*<a href='/   /g" | sed "s/' target=new>/   /g"| sed "s/<.*\[/     /g" | sed "s/].*//g"
复制代码
“轩辕Linux开放实验室”的命令行没有curl命令,所以就分步走了。

以后再替换替换就变成sql语句,就可以存数据库了。

作者: d63hbz   发布时间: 2011-06-17

用cut把前面的剪了,也能达到效果。
  1. cat sz | sed "s/<td/\n<td/g" | grep target  | sed "s/' target=new>/   /g"| sed "s/<.*\[/     /g" | sed "s/].*//g" | head | cut -c35-
复制代码
还是希望能有哪位大侠能指点下怎么将那个点描述出来,网上搜的几个中文的表达式都不好用。

作者: d63hbz   发布时间: 2011-06-18

  1. sed 's/¡¤//;s/.*\(final.*\)/\1/'
复制代码

作者: yinyuemi   发布时间: 2011-06-18