2008-06-30

set IFS

IFS=Internal Field Separator 实在shell中,控制分隔符的,在for。。in的语法中很有用。 $ line=learn:unix:at:livefire:labs $ for i in $line > do > echo $i > done learn:unix:at:livefire:labs $ OIFS=$IFS $ IFS=: $ for i in $line > do > echo $i > done learn unix at livefire labs $ ,不过回车的设置应该使用IFS=$'\n'的格式 为什么要加 ...
因为要使用ntfs-3g(内核至少2.6.22才不会有warning提示)的写功能,所以将自己机器上的linux(debian)内核从2.6.18升级到目前最新的2.6.25.9 下载源码,定制参数选项(make menuconfig,很重要,好多问题其实出现在参数的配置上),make;make modules_install;make install,就是这么简单。 最后还是要生成initrd文件的,可以使用yaird命令 这里记录一下升级过程中碰到的两个导致linux启动panic的东东 /bin/cat: /sys/block/hda/dev: No such file o ...
因为安装apache的svn动态模块需要,需要自己在Solaris上编译subversion(1.4.6),autoconf,automake都很顺利的生成configure文件,同样Makefile也生成的很顺利,结果make的过程中出现libintl_bind_textdomain_codeset不能识别的symbol,经查找是缺少了libintl库的原因,因此只需要在Makefile的SVN_APR_LIBS后边追加-lintl即可。
安装Solaris的sunfreeware的python2.5,虽然可可以正常使用,可是好像是静态编译的,在编译mod_python的时候,老是出现连接错误! 无奈,只要使用源代码自己编译,我下载的python2.5.2版本,注意使用shared选项,比如: ./configure --enable-shared 剩下的就是根据README步骤做就可以了。比如:./configure --with-apxs=/usr/local/apache2/bin/apxs
On solaris,I pkgadd the python 2.5.1,but when run the following code : import hashlib the error is : ImportError: No module named _md5 It means that the python need the openssl which version should be at least 0.9.8g
vim简单好用,可是好像不能自动识别字符编码吧,这在中文环境尤为突出,常见的是utf-8,gb2312等。 vim的encoding在中文unix/linux下边缺省是euc-cn,但是我现在需要将编码统一成为utf-8,为了避免各种乱码问题,下边是我的配置: let &termencoding = &encoding set encoding=utf-8 此外你也可以在vim中动态指定编码类型: :e ++enc=<encoding> :e ++enc=utf-8 附记:中文编码范围:[\\u4e00-\\u9fa5]
许久没有使用Solaris了,发现有些命令已经很生疏了,记得好像有个命令是图形话管理Solaris的,现在忘了,今天要修改一台Solaris10的网络配置,在此做简单记录: 永久生效: /etc/hosts /etc/hostname.xxx /etc/defaultrouter(默认网关) /etc/netmasks(掩码) /etc/inet/ipnodes 要修改以上配置文件,尤其是ipnodes。 动态生效 ifconfig eri0 down ifconfig eri0 211.101.149.233 netmask 255.255.255.0 up ifconfig ...
git是linux下边很好用的版本控制工具,可是因为其开放性,其认证权限等还是比较弱的,我喜爱这个工具是因为其分布式特性,这样我既可以象cvs/svn那样进行集中式的管理,也可以在一个受限制的环境中(比如客户现场、不能访问svn服务器的情景中)跟我们的team成员对代码进行版本控制。 gitosis是git的一个便捷的管理工具,它可以管理多个repository,可以管理用户认证,可以不需要多个shell账号就可以解决多用户访问集中repository的问题。 如果你的系统是linux那么,安装gitosis是轻而易举的事情,详细请看这里,可是如果Solaris呢?恐怕就不是那么简 ...
/etc/profile (for sh, ksh, bash shells) /etc/.login (for csh, tcsh shells) /etc/dt/config/Xconfig (for CDE) /etc/default/login (used by login program) /etc/default/su (used by su program) 还有一点不爽的是我用ssh登录solaris主机执行命令:ssh user@solarishost cmd 如果cmd在/usr/local/bin下边,提示命令找不到,不知何解
搞过linux/unix上C/C++开发的人应该对LD_LIBRARY_PATH不陌生,可是到处配置这样的环境变量,也比较烦,现在就我知的系统,做个简单总结。 linux:/etc/ld.so.conf,通过ldconfig进行更新配置 solaris:/var/ld/ld.config,通过crle进行配置,比如crle -l /usr/local/lib
在中文的linux下边,编码向来是比较头痛的事情,虽然file命令可以帮助你确定部分编码,可是碰到象c、php等程序的时候,你却得不到有用的信息。 为此你可以尝试一个新的命令enca,此命令专门用于识别编码,而且在我的应用范围内,识别率100%,确实很好,很强大!
可以在文件头增加: -*- coding: gb2312; -*- 相关键:C-x RET r TAB会列出相关的编码 C-x <RET> f coding <RET> Use coding system coding for saving or revisiting the visited file in the current buffer. C-x <RET> c coding <RET> Specify coding system coding for the immediately following command. C-x <RET ...
Recently ,I need to compile pptp-linux by myself.But there was an error: gcc -o pptp pptp.o pptp_gre.o ppp_fcs.o pptp_ctrl.o dirutil.o vector.o inststr.o util.o version.o test.o pptp_quirks.o orckit_quirks.o pqueue.o pptp_callmgr.o routing.o pptp_compat.o pptp.o: In function `main': /home/agile/ ...
linux下边一般用pkill可以杀掉指定的进程,但是有的时候进程并不是一个合法的,因此我只好退回到kill的世界,用那个万能的kill -9来结束一起,哈哈! 那进程很多怎么办,比如我就见过被黑过的linux后,有1000多个CROND进程,这时候就可以显示linux/unix下边组合的威力了,我的脚本如下: kill -9 `ps -ef |grep CROND |awk '{print $2}' ` 注意,“`”不是”‘“哦
批量编译el文件的命令行: emacs -batch -f batch-byte-compile *.el
emacs是一个强大的编辑器,而且支持编辑远程主机的文件,当然了,后台可能是ftp,ssh等协议,在此只是做个备份以防忘记 :) emacs编辑远程主机文件,和打开编辑一般文件没有什么特别,除了打开文件的方式有点特殊外,格式如下 /host:filename /user@host:filename /user@host#port:filename /method:user@host:filename /method:user@host#port:filename method可以是:ftp,ssh,rlogin,telnet等 ...
lftp是我在linux下边最喜爱的ftp工具,好处就不罗嗦了,google的话有一堆,在此只说说如何上传/下载目录,常见的有两种,简介如下: mput/mget -d 的方式,不过此种方式只能操作一个目录,不能处理嵌套的目录 mirror 可以下载命令,加上-R 就是上传 命令其实很简单,但是实际操作的时候,本人就碰到一个小问题:第一次上传一个目录的时候,出现如下提示就不动了Getting directory contents (0) 经查证,应该是服务器端目录是空的缘故吧,只要增加一个选项就可以了,如下 set ftp:list-empty-ok yes
2007-12-30

解决evince部分中文显示乱码

关键字: debian
也不知道是什么时候升级evince,导致现在的evince不能看部分中文的pdf(现在版本是2.20.2-1),反正好郁闷,还好有人先一步解决这个问题了 ubuntu 7.10 下evince 查看pdf中文乱码的问题 虽然我的环境是debian,但是并不妨碍解决我的问题,比较ubuntu也是从debian出去的,而且此问题与xpdf和evince相关的。 好了,现在假设大家已经将xpdf-chinese-simplified都已经装好,而且大部分中文是可以正常显示了,对于个别的,就需要poppler encoding data了,去下载最新0.2版本,参考README安装就好了。 ...
   在window下可以很轻松的使用vpn拨号连接,那是因为window xp等已经内置了pptp协议而且内置了客户端,可在linux下,却是没有那么轻松,因为linux下的pptp客户端:pptp-linux有些限制和要求的,以下就我一整天折腾的过程或者算是些许经验在此分享。 首先要去pptp-linux的官方网站去溜达一下,以好补充一下基本知识,这点需要注意的是pptp 客户端要求内核至少应该是2.6.15(我的是2.6.18),这点我觉得大部分的系统应该满足了 :) ,而且官方文档就linux的各个分支都有详细的文档,我用的是debian,当然是Deb ...
  近日在AIX下边使用vi,因为历史原因,AIX的分区好像很不合理,当用vi打开大一点的文件时候,总是出现 error 代码   "/var/tmp/ExW8aydk" No space left on device    的错误,对于习惯用vi的我来说,太郁闷了。   其实解决办法也很简单,只要设置一个vi的环境变量就可以了   vi 代码   :set directory= ...
exclude files in the find command find命令常用来查找特定目录下,所有相关文件,可是也经常要排除特定内容的文件/目录,比如不想看svn/cvs的系统文件目录,如何做到呢,明显-name不能解决问题,但是可以用find 的 -not参数,比如查找不包含.svn的所有文件: java 代码 find . -not -wholename  '*.svn*' -print  or find .  ! -wholename  '*.svn*' -pr ...
  tar 是linux下边很常用的命令了,我经常用它来打包java工程,总所周知,java工程会有很多class文件,以前经常是先删除class再打包,感觉很不爽,就深入研究了一下tar,发现有个--exclude参数,看起来挺不错,应该能满足我的需要。   最后摸索用法如下:   tar cvfz   xxx.tar.gz xxx/ --exclude '*.class'     注意,--exclude应该放到后边,放到cvfz ...
近来,一直在折腾我的Xorg系统,从6.9到7.0,一直在反复中.可是有时侯却出现firefox不能处理中文的情况,这个现象很不爽,毕竟我们还是用中文比较多的!. 于是用firefox-bin启动,发现crash的时候,出现如下错误提示:./firefox-bin: symbol lookup error: /usr/lib/libXft.so.2: undefined symbol: FT_GlyphSlot_Embolden ,原来是libXft库出现了问题,还好,俺有备份,恢复后,一切又完好如初!.
  进来,因为工作需要,要在j2se1.3.1下边运行一些程序(在我看来,是多么古老的版本了),于是从sun下载j2se1.3,安装完毕.结果运行出错: /usr/jdk1.3.1_17/bin/i386/native_threads/java: error while loading shared libraries: libstdc++-libc6.1-1.so.2: cannot open shared object file: No such file or directory.   原来是缺少动态库,简单于是google相关的debian下的package,原来 ...
  apt 0.6以后,apt开始检查安装包的数字签名,如果没有符号的签名,则报出如下错误: W: GPG error: http://mirrors.geekbone.org testing Release: The following signatures     couldn't be verified because the public key is not available: NO_PUBKEY 010908312D230C5F   我的解决办法如下:   1. 使用gpg去下载特定的key:gpg -- ...
agile_boy
搜索本博客
我的相册
08ebfa7e-5134-4949-b957-b858965e80f6-thumb
藏民生活体验(做糌粑)
共 5 张
存档
最新评论