VIM编辑文件实例
假设有以下文件
1234567
甲甲大学
张三
李四
王五
2222222
乙乙大学
张三三
李四四
王五五
3333333
丙丙大学
张三四
李四五
王五六
……
简单讲,每个队的信息被分成了5行,报名号、学校、队员1、队员2、队员3。我们主要的工作是要删除多余的回车符,将每一队的信息集中到一行。
- 删除多余的空白:“:%s/ //g”;
- 因为总共是1430行,也就是286个组,这个数记下来,下面要用。
- 合并每组的5行:在normal模式下,光标停在报名号这一行,直接输入“5J”,注意,是大写的J,也就是shift+j。可以看到,每一组的5行信息已经合并成一行了,并且以空格分隔。其中,5表示执行后面的命令5次,J表示合并两行。这一步是基础,并不需要,按“u”,退回到第2步的状态,并按“gg”,将光标停在第一行。
- 录制宏:开始录制以a为名字的宏,“qa”,之后依次按下面的键,“5Jjq”,其中5J的作用已经解释了,j跳到第二行,q结束录制宏。
- 这时候你的光标应该在第二行,并且是normal模式,依次按下面的键,“285@a”,其中@就是shift+2,@a的意思是执行宏a,也就是执行@a共285次。这时,每组的信息已经集中到一行了。
- 其实我们的任务基本上已经完成了,下面是先转成csv格式,再导入Excel,还是直接转成html表格,都是很容易的事情了。下面的命令就不再解释了。
- :%s/ /<\td><td>/g
- :%s/^/<tr><td>/g
- :%s/$/<\/td><\/tr>/g
- 文件最前面加上<html><body><table>,文件最后面加上</table></body></html>,大功告成。(表格加线,加标题这些自己看着办吧)
btw:
当你不了解一种工具(特别是像VIM这种强悍的工具)时,你可能根本想不到活儿还可以这么干,而且干的这么漂亮。
RapidShare
RapidShare上好东西比较多,但是对免费用户的限制也比较多。倒计时还可以找软件跳过去,但流量限制不好办。不知道ADSL断线再拨号的方式是否可行。试了几个在线代理都不能正常下载。最后发现下面两种方式可行:
- http://fanyi.cn.yahoo.com/
- Opera的Turbo
再加上自己本身IP可以下一部分,应该够了。
btw:不要成为下载狂
三个网站让你成为Linux命令行高手
Sent to you by Mao Ziyang via Google Reader:
Linux的命令行是通向Linux高级应用的必经之路,Linux系统管理员、开发者都是学习对象。Susan Linton向我们推荐了三个学习Linux命令行的网站,现在介绍给大家:
0. LinuxCommand
LinuxCommand是一个学习Linux命令行最好的网站之一。网站分为:学习Shell、写Shell脚本、脚本库、超级MAN页面。

1. O’Reilly的Linux命令指南目录
O’Reilly的Linux命令指南目录是一个极好的快速参考指南,列出了大量的内部指令,并且告诉用户这是什么命令,以及如何使用它,这对于初学者或更高级用户来说是非常好的学习地方。

2. Linux 手册
Linux手册适合Shell的学习和Shell脚本编写。这里是学习Linux命令的最好资源,当你学习了一些命令之后,你想知道如何去编辑一个文件,那么Linux手册就介绍了文本编辑。

以上便是Linux命令学习的三个网站,可能唯一美中不足的地方,便是语言。因为是全英文,对于那么英文不好的爱好者来说是一件比较痛苦的事。不过庆幸的是,这些英文都比较基础。祝你们学习愉快。
Things you can do from here:
- Subscribe to Osss.cn 开源社区 using Google Reader
- Get started using Google Reader to easily keep up with all your favorite sites
Academia vs. Business
Sent to you by Mao Ziyang via Google Reader:
Things you can do from here:
- Subscribe to xkcd.com using Google Reader
- Get started using Google Reader to easily keep up with all your favorite sites
Ubuntu下使用黑莓8310拨号上网
参考页面:
- http://bbs.maxpda.com/thread-327579-1-2.html
- http://bbs.maxpda.com/viewthread.php?tid=240390&page=1&extra=page%3D1#pid4918836
- http://forum.ubuntu.org.cn/viewtopic.php?f=116&t=215635&start=0
- http://hi.baidu.com/icej/blog/item/b5061ffa5a30229e58ee9064.html
综合以上页面的信息,考虑到相关软件的更新以及不同用户的需求,再整理一下。
1、用到的软件就是Berry4All,原名叫BBtether。到http://www.berry4all.com/下载压缩包。软件是用Python写的,因此不需要编译,但是需要安装相关的依赖库。
sudo apt-get install python libusb-dev ppp python-usb
以上4个包是必须装的,如果希望使用GUI界面,就还要安装wxgtk的库文件:
sudo apt-get install python-wxgtk2.8
因为在我的机子上wxgtk这个包没有装过,需要额外的43M空间,就没有安装,事实证明也不需要,用命令行足够了。
2、安装好依赖包之后,将Berry4All解压缩,默认有一个bbtether目录。进入bbtether目录下的conf目录,编辑att-conf文件:
将wap.cingular替换为cmnet,其他内容保持不变。
3、停掉已有的网卡:
sudo ifconfig eth0 down
eth0是第一块网卡的编号。可以用ifconfig命令查看当前活动的网卡,确认全部网卡都已经停掉之后,再进行下一步。
4、回到bbtether目录,使用下面的命令拨号:
sudo python bbtether.py att
如果是使用GUI界面,则运行berry4all.sh即可,在菜单中选择att网络。
5、如果一切正常,拨号成功后,最后会显示当前的IP和DNS地址。现在就可以上网了!产生流量后,也会有相应显示。
=====================================
注:
这些天用Ubuntu远多于Vista,特别是用VirtualBox虚拟了个XP之后。但是外出时上网的问题一直没有解决。根据Vista下用BB拨号经验,前天尝试在虚拟的XP中安装DM并拨号,一直没有成功,每次的错误信息还都不一样,搞到2点多,最后还是放弃了。今天突然想到应该直接搜索一下Linux+BB上网的信息……爽!
Ubuntu下使用md5sum计算字符串的MD5值
echo -n string|md5sum
注:之前只会用md5sum计算文件的MD5值,想计算个字符串的MD5值,试了很多办法都不行,今天无意中看到。看来对Linux的软件哲学理解的还是不到位。
3D Mandelbulb 集
几个提供数据的网站
- 联合国的数据网站:http://data.un.org/,目前说有24个数据库,6千万条记录。
- 美国政府的公共数据分类网站:http://www.data.gov/。
- 提供公共数据的个人站点:http://www.usgovxml.com/。据说比上一个网站数据更丰富,格式更规范。
- 美国政府各机构的支出细节:http://www.usaspending.gov/。
- Amazon的AWS公共数据集:http://aws.amazon.com/publicdatasets/。
相关文章:
- Data.gov上线:看上去很美,但数据有限 – 译言翻译
- 阳光实验室(Sunlight Labs)向Data.gov发起挑战 – 译言翻译
- 2009最值得注意的创业者 – 译言翻译
- [读写网 - 译言版] Amazon网页服务征集公共数据集
说明:本人并没有核实以上数据库的数据真实性(废话),请各位自行取舍。
TEX THE WORLD
TeX THE WORLD是一个FireFox插件,它的作用是在浏览器的输入中很方便的加入TeX公式。在[; 和 ;]之间直接按照TeX语法写公式,就可以了。如果编辑器是支持HTML的(比如Gmail),那么结果可以实时显示(有一点点延迟,基本可以忽略),如果是纯文本的编辑器,结果需要在结果提交之后才能显示。比如:
[;F(x)=\int_a^x f(t)dt;]
公式实际上是保存在远程服务器上的图片,这和原来用LaTeXRender实现的LaTeX公式编辑器本质上是一样的,只是用起来更方便。
另外,基于Chrome的插件也已经出来了,在这里。安装和使用方法请自行Google之。
VIM快捷键:J
Normal模式下按J,可将下一行合并到当前行最后。



