2009年5月4日

|Script|在控制台使用 cd 命令时,用拼音自动补全中文路径

在控制台使用 cd 命令时,用拼音自动补全中文路径

实验目录如下:
biff@lenovo:/domain/WorkSpace$ ls
SVN培训 全球眼 浙江建行 浙江农信

使用: (输完后按 TAB 键自动补全)
cd S <tab> 进入[SVN培训]
cd q <tab> 进入[全球眼]
cd z <tab> 自动补全[浙江]
cd zj <tab><tab> 提示[浙江建行 浙江农信]备选
cd 浙江j <tab> 进入[浙江建行]
cd zjj <tab> 进入[浙江建行]
cd zj1 <tab> 进入[浙江建行]
cd zj2 <tab> 进入[浙江农信]

配置:
找到 /etc/bash_completion 中 _file_dir() 函数,将
COMPREPLY=( "${COMPREPLY[@]}" "${toks[@]}" )
改成 ( 其中chsdir为本脚的名字,注意指定路径和赋执行权限 )
chs=($(chsdir "x$1" "$cur"))
COMPREPLY=( "${COMPREPLY[@]}" "${toks[@]}" "${chs[@]}" )
( 这是最简单的,但也是最不安全的。还有其它的方法,比如将这段函数粘到$HOME/.bashrc文件中,在引用/etc/bash_completion之后再覆盖性的定义一遍。或者另起一个文件保存这段脚本,然后在.bashrc中用 . $HOME/bin/myscript.sh 导入一遍。注意小点点。)
( 上面的修改只对 cd 命令生效,如果其它地方也需要补全,比如vim,还要用相同的方法处理 _filedir_xspec() 函数 )

问题:
1、多音字无法解决,比如[浙江建行]要输入[zjjx];
2、可以用数字序号定位,但是现在序号有乱序问题,思考中...
有问题邮件联系!

祝Linux之行一路顺风!

版本更新在: https://groups.google.com/group/binsos/browse_thread/thread/1951b77a2cf4bfab

---------------------------------
google talk
shaozx@gmail.com
---------------------------------

2009年5月2日

时间和书

今天是五六年来第一次去电脑城买光盘,与其等上三四天时间从电骡上下载,不如打个车今天就把光盘买回来。

这就是时间的价值,我也是最近一年多才意识到有些时候时间比金钱重要。当然,这是有前提条件的,就是在有一定的经济基础之后。

大家可能也有这个毛病:每天泡在淘宝上看一款U盘,或者一部手机,连续关注了两三个月还是下不了决心买下来。
半年前,我想买个U盘,连续三四周的时间都在网上逛,比较性价比,比较哪个卖家信用高而且价格便宜。突然有一天,我想通了,一口气买了三个,两个4GB、一个8GB,一起花费了200块钱。该有的都有了,以后就再没去关心U盘的事情了。
为了这200块钱真的不值得每天花一个多小时逛淘宝。

还有就是买书。

回想起来,差不多有十年没买过书了,因为不管找什么资料,网上都能找到。
但是还是应该买书回来看,特别的一本好书。“书非借不能读”,这是非常有道理的,不是每个人都能坚持把一本300页的PDF电子书从头看到尾,而买的纸质书就不一样了。

买书看,还有另外一个理由。一般网上找到的资料都是片段性的,比如装个Apache,或者学个新语言Python之类的,去网上找资料都会搜索某个针对性的问题,或是找快速入门参考,而很少能系统全面的学习。我指的是找“资料”,不是找“书”。如是上网找书的朋友,估计又遇到前面说到的问题,有很多人电脑里面存着大把的电子书,却没有一本书看完过。

书是朋友,时间是财富。