没人知道啊?
算了吧,这是我们公司一高人的解决方案,如果有人用得着可以看看:
[code:1]目前有三种方法实现这个功能:
1。公司在SCO机器上有一种实现方法。大致做法是自己编写了一个shell,其中调用了ftp,之后根据条件调用需要运行的程序。SCO作为FTP服务器,完成FTP功能之后再运行自己的shell。他大致的实现方法如下:
/etc/inetd.conf文件中有如下一行:
ftp stream tcp nowait root /etc/ftptrigger ftptrigger
ftptrigger文件的内容如下:
#!/bin/ksh
TLROWNER=grcuser
TLRHOME=/usr/$TLROWNER
ADMHOME=/usr/cityadm
/etc/ftpd -l -t 30
if [ -d $TLRHOME ]
then
cd $TLRHOME
if [ -f updtlr.tar.Z ]
then
$TLRHOME/updtlr.sh
fi
if [ -f newtlr.tar.Z ]
then
$TLRHOME/newtlr.sh
fi
fi
if [ -d $ADMHOME ]
then
cd $ADMHOME
if [ -f updadm.tar.Z ]
then
$ADMHOME/updadm.sh
fi
if [ -f newadm.tar.Z ]
then
$ADMHOME/newadm.sh
fi
fi
2。在FTP客户端调用ftp功能的shell中,调用ftp之后,接着通过rsh的方法登录到ftp服务器直接调用上面需要的shell。据重庆技术局的宴良讲这种方法在网点更新程序的时候使用过。我从徐峰同学(好像从什么时候起我们统一改称同学了,哈哈)得到这个方法。
3。和第二种方法类似,也是在FTP客户端调用ftp之后加上如下代码,以登录到ftp服务器直接执行所需的shell。
(sleep 1;echo "postmis";
sleep 1;echo "mis";
sleep 1;echo "";
sleep 1;echo "/home/postmis/bin/loaddata.sh";
sleep 1;echo "";
sleep 1;exit;
sleep 1;echo "";
)|telnet 10.118.8.243
这种方法的缺点是ftp服务器的用户名和口令是明文,而且sleep的时间比较难确定,但也是一种方法,而且在这边使用效果还可以。
那位大侠还有什么需要说明,请讲:)
[/code:1]