LumaQQ启动脚本

原创 2004年10月18日 14:48:00
LumaQQ启动脚本   #!/bin/bash # 判断执行文件的类型,如果是一个符号链接,得到这个链接的目的路径,在以前的版本中,这个任务是用 # readlink -f 命令完成的。这种作法稍微有些问题,比如你的系统里面可能没有readlink命令,或者低版本的 # readlink还不支持-f参数,所以在这里先采用readlink,如果readlink失败,则再用file命令和一个 # 模式匹配来得到目的路径。目前我不确定是否每个平linux页面 台上的file命令都是返回symbolic link to 这种字符串, # 如果不是,把symbolic link to 替换成你的file命令返回的那样 PREFIX= if [ -L "$0" ]; then PREFIX=`readlink -f $0` if [ $? -eq 0 ]; then PREFIX=`dirname $PREFIX` else PREFIX=`file $0` PREFIX=${PREFIX##*symbolic link to } PREFIX=`dirname $PREFIX` fi else PREFIX=`dirname $0` fi # 在这里我判断得到的路径是否是绝对路径,如果不是绝对 # 路径,我要再做一些处理得到绝对路径 case $PREFIX in /*) ;; *) cd $PREFIX PREFIX=`pwd` ;; esac # 这里检查你的用户目录下是否有.lumaqq目录,如果没有, # 会自动建立一个,用户的所有QQ相关信息将保存在这个 # 目录下,所以在多用户的机器上,你应该把这个目录设置 # 成唯你可读 if [ ! -e $HOME/.lumaqq ]; then mkdir $HOME/.lumaqq fi # 这里对LumaQQ的一些目录和文件做一些链接,这个地方使用 # 了-f参数,所以即使你挪动了LumaQQ的目录到另外一次地方 # 下次运行也不会受影响 cd $HOME/.lumaqq ln -sf $PREFIX/log4j.properties $HOME/.lumaqq/log4j.properties ln -sf $PREFIX/xml ln -sf $PREFIX/sound ln -sf $PREFIX/QQWry.dat $HOME/.lumaqq/QQWry.dat # 这里我设置Java到类路径,LumaQQ安装目录下面的lib目录 # 包含了所有需要用到的jar文件,这些都必须加到类路径中 cp= for i in $PREFIX/lib/*.jar; do cp=$i:$cp done # 这里是开始运行了,为了用户的方便,这里尝试3种情况,首先检查用户安装的是不是带JRE版本的,如果是 # 则使用自带的JRE。如果失败,检查JAVA_HOME是否设置了,如果设置了,使用JAVA_HOME,如果仍然失败, # 则在/usr下面找寻一个可用的JRE。如果/usr下面没有,则再在/opt下面找寻JRE,如果/opt下面也没有, # 则在用户主目录下找寻JRE,如果还找不到,那就是真的失败了 if [ -e $PREFIX/java ]; then $PREFIX/java/bin/java -Djava.library.path=$PREFIX/swt -classpath $cp edu.tsinghua.lumaqq.LumaQQ "$HOME/.lumaqq" & elif [ ! -z $JAVA_HOME ]; then $JAVA_HOME/bin/java -Djava.library.path=$PREFIX/swt -classpath $cp edu.tsinghua.lumaqq.LumaQQ "$HOME/.lumaqq" & else found=0 for i in `find /usr -name "java" | grep bin`; do if [ -x "$i" ]; then $i -Djava.library.path=$PREFIX/swt -classpath $cp edu.tsinghua.lumaqq.LumaQQ "$HOME/.lumaqq" & found=1 break fi done if [ $found -eq 0 ]; then for i in `find /opt -name "java" | grep bin`; do if [ -x "$i" ]; then $i -Djava.library.path=$PREFIX/swt -classpath $cp edu.tsinghua.lumaqq.LumaQQ "$HOME/.lumaqq" & found=1 break fi done fi if [ $found -eq 0 ]; then for i in `find $HOME -name "java" | grep bin`; do if [ -x "$i" ]; then $i -Djava.library.path=$PREFIX/swt -classpath $cp edu.tsinghua.lumaqq.LumaQQ "$HOME/.lumaqq" & break fi done fi fi

LumaQQ的作者

google了半天,居然找不到关于luma大侠的任何个人介绍。至于luma的开发历程,更是无人能详。憾哉!憾哉!国人能坚持开发一个软件若干年者有几?而成功者更有几?翻开LumaQQ的源码看了看,很有学...
  • jgku
  • jgku
  • 2007年04月10日 17:10
  • 561

LumaQQ

http://lumaqq.linuxsir.org/LumaQQ 是一个独立的 Java QQ 客户端,具有可重用的纯Java核心和基于SWT的仿 QQ 界面 ......
  • windlhc2k
  • windlhc2k
  • 2005年08月21日 13:41
  • 443

lumaqq receiver

48101 [Porter] DEBUG edu.tsinghua.lumaqq.qq.packets.Packet - 收到的普通消息类型为:QQ_IM_UDP_REQUEST48102 [Por...
  • henryouly
  • henryouly
  • 2004年10月13日 03:02
  • 448

lumaqq sender

18863 [Porter] DEBUG edu.tsinghua.lumaqq.qq.UDPPort - 已发送 - 包类型: QQ.QQ_CMD_SEND_IM 序号: 1068518983 [...
  • henryouly
  • henryouly
  • 2004年10月13日 03:01
  • 301

LumaQQ分析

满打满算看LumaQQ的源代码有一个星期了。我以为还是本科时看那些代码,开开个IDE就开始分析程序结构,外加调试跟踪几遍就差不多能够摸清——实践证明我错了,我费了很长时间才搞清里面的静态关系,也就是类...
  • ramacess
  • ramacess
  • 2007年09月01日 21:24
  • 1603

weblogic server 启动脚本

一. linux   下   app01   应用server启动脚本如下:   #!/bin/sh                                                  ...
  • xyy27
  • xyy27
  • 2013年08月07日 17:07
  • 2694

bind配置包括启动脚本

一:网络环境 bind9.4 主机名(hostname):centos ip:192.168.1.168 dns:192.168.1.1(配置完后,需要修改,指向192.168.1.168,修...
  • I_am_JoJo
  • I_am_JoJo
  • 2012年08月16日 09:22
  • 1244

Gentoo启动脚本

两种方法: 1. 编辑/etc/init.d/example,将example +x权限,rc-update: 1 2 3 vim /etc/init.d...
  • chen200910a
  • chen200910a
  • 2014年03月08日 22:07
  • 285

centos7如何添加开机启动服务/脚本

一、添加开机自启服务 在centos7中添加开机自启服务非常方便,只需要两条命令(以Jenkins为例): ? 1 2 systemctl enable jenkins...
  • u014242496
  • u014242496
  • 2017年05月08日 14:44
  • 3990

gitlab6 nginx配置和启动脚本

gitlab6 nginx配置和启动脚本cheungmine2013-10最近把gitlab安装到了ubuntu12.04.3的虚拟机上了。参考:https://github.com/gitlabhq...
  • cheungmine
  • cheungmine
  • 2013年10月06日 11:03
  • 2801
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:LumaQQ启动脚本
举报原因:
原因补充:

(最多只允许输入30个字)