LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 935|回复: 3

父子shell的问题

[复制链接]
发表于 2007-7-12 16:45:03 | 显示全部楼层 |阅读模式
我的父shell内容为(简略):声明几个变量:
#!/bin/bash
export HOMEDIR=~/test
export JAVA_HOME=~/test/jdk1.6.0
export CLASSPATH=$JAVA_HOME/lib/tools.jarHOMEDIR/lib/mysql.jarHOMEDIR/lib/activation.jarHOMEDIR/lib/mail.jarHOMEDIR/lib/log4j-1.2.8.jarHOMEDIR/lib/smartermq_test.jarHOMEDIR/lib/commons-dbcp-1.2.2.jarHOMEDIR/lib/commons-pool-1.3.jar
export JAVA_CMD=$JAVA_HOME/bin/java
export JAVA_LIB=com.luke.guo.test
export JAVA_LIB1=com.luke.guo.test1
export LOGFILE=$HOMEDIR/CheckMBP_`date +"%Y%m%d"`.log

在父shell中调用形式如下:
nohup ~/test/son.sh &



子shell的内容为:
#!/bin/bash

nohup $JAVA_CMD -Xmx2048m -classpath "$CLASSPATH" $JAVA_LIB 7 15 >> $LOGFILE
nohup $JAVA_CMD -Xmx2048m -classpath "$CLASSPATH" $JAVA_LIB1 7 >> $LOGFILE

但是却出现这样的错误:
/home/test/son.sh: line 3: $LOGFILE: ambiguous redirect
/home/test/son.sh: line 4: $LOGFILE: ambiguous redirect

有好几个son.sh脚本。放在不同的机器上跑。有些就可以。几个son.sh脚本是一样的。

我到网上搜了一下。说可能是变量声明的时候有空格。可是我这个没有啊??
到底是什么原因??急需解决!!!!!!!!!
发表于 2007-7-13 09:36:50 | 显示全部楼层
看看不同机器上 $LOGFILE 的值是否一样?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-7-13 12:19:36 | 显示全部楼层
$LOGFILE是一样的。

呵呵。找到原因了。可能是java的version不对。所以才导致错误的。

谢谢了
回复 支持 反对

使用道具 举报

发表于 2007-7-13 23:44:01 | 显示全部楼层
恩,那就可能是了呵呵
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表