免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: abloy
打印 上一主题 下一主题

crontabs下不能用uncompress吗? [复制链接]

论坛徽章:
0
11 [报告]
发表于 2004-06-25 17:18 |只看该作者

crontabs下不能用uncompress吗?

呵呵,不好意思,指了路径的,我这时写错了

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
12 [报告]
发表于 2004-06-25 17:58 |只看该作者

crontabs下不能用uncompress吗?

  1. /usr/bin/uncompress  /data/file.tar.Z
  2. /usr/bin/tar xvf  /data/file.tar
复制代码

论坛徽章:
0
13 [报告]
发表于 2004-06-27 10:22 |只看该作者

crontabs下不能用uncompress吗?

有什么区别请adm兄讲讲!!!我出差了,要到周一才能回去试。

论坛徽章:
0
14 [报告]
发表于 2004-06-28 08:47 |只看该作者

crontabs下不能用uncompress吗?

这回我真急了,不行啊,adm兄,还是一样的结果!!!!!怪了!

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
15 [报告]
发表于 2004-06-28 08:55 |只看该作者

crontabs下不能用uncompress吗?

代码(包括错误信息)铁出来看看!

论坛徽章:
0
16 [报告]
发表于 2004-06-28 11:19 |只看该作者

crontabs下不能用uncompress吗?

# set terminal type
eval `tset -m ansi{TERM:-ansi} -m :\?${TERM:-ansi} -e -r -s -Q`

[ -x /bin/mesg ] && mesg n                # if mesg is installed...


#日期处理
month=`date +%m`
day=`date +%d`
year=`date +%Y`

month=`expr $month + 0`

day=`expr $day - 1`

if [ $day -eq 0 ]; then

month=`expr $month - 1`

if [ $month -eq 0 ]; then
month=12
day=31
year=`expr $year - 1`

else
case $month in
1|3|5|7|8|10|12) day=31;;
4|6|9|11) day=30;;
2)
if [ `expr $year % 4` -eq 0 ]; then
if [ `expr $year % 400` -eq 0 ]; then
day=29
elif [ `expr $year % 100` -eq 0 ]; then
day=28
else
day=29
fi
else
day=28
fi
;;
esac
fi
fi
if ([ "$day" = "1" ] || [ "$day" = "2" ] || [ "$day" = "3" ] || [ "$day" = "4" ] || [ "$day" = "5" ] || [ "$day" = "6" ] || [ "$day" = "7" ] || [ "$day" = "8" ] || [ "$day" = "9" ])
then
day=0"$day"
fi
if ([ "$month" = "10" ] || [ "$month" = "11" ] || [ "$month" = "12" ])
then
nyr="$year$month$day"
else
nyr="$year"0"$month$day"
fi
echo $nyr
#日期处理完

smfile=`echo $nyr | cut -c5-8`
yqhyy=`echo $nyr | cut -c1-4`
yqhmm=`echo $nyr | cut -c5-6`
yqhdd=`echo $nyr | cut -c7-8`
mmdd=`echo $nyr | cut -c5-8`
crdnyr=`echo $nyr | cut -c3-8`

if [ "$yqhmm" = "10" ]
then
   jhmd="A"$yqhdd
else
    if [ "$yqhmm" = "11" ]
    then
       jhmd="B"$yqhdd
    else
        if [ "$yqhmm" = "12" ]
        then
            jhmd="C"$yqhdd
        else
            jhmd=`echo $nyr | cut -c6-8`
        fi
    fi
fi

if [ ! -f /data/ftp/recv_box/ffpr.9150.$mmdd.Z ]
then
cd /data/ftp/recv_box
tput cup 5 15; echo "$yqhyy年$yqhmm月$yqhdd日报表文件尚未下传,正在读取,请稍后.....!"
ftp -n <<!
open **********
user ftp ftp
prompt off
cd /report/$nyr/sbsrpt/
binary
get ffpr.9208.$mmdd.Z /data/ftp/recv_box/ffpr.9208.$mmdd.Z
get ffpr.9150.$mmdd.Z /data/ftp/recv_box/ffpr.9150.$mmdd.Z
cd /report/$nyr/iras
mget 8G?$nyr.9208
mget 8G?$nyr.9150
cd /report/$nyr/9300
get AC9208$yqhyy.$jhmd /data/ftp/recv_box/AC9208$yqhyy.$jhmd
get AC9150$yqhyy.$jhmd /data/ftp/recv_box/AC9150$yqhyy.$jhmd
close
!
fi
if [ ! -f /data/ftp/recv_box/ffpr.9208.$mmdd.Z ]
then
clear
tput cup 5 15; echo "分行机器上还没有$yqhyy年$yqhmm月$yqhdd日报表,请与分行有关人员联系!"
tput cup 7 15; echo "任意键继续......"
read ryj
#exit
fi
#if [ "$nyr" -ne 1 ]
if [ "$nyr" = "00000000" ]
  then
        DATE=$sysdt
  else
        DATE=$nyr
fi
yymmdd=`echo $DATE |cut -c3-8`
yyyymmdd=`echo $DATE |cut -c1-8`
tput cup 10 15
tput cup 14 15
echo "解 压 数 据 工 作 开 始!"
mkdir /data/newrpt/9208/$yyyymmdd
mkdir /data/newrpt/9150/$yyyymmdd
cd /data/newrpt/9208/$yyyymmdd
cp /data/ftp/recv_box/ffpr.9208.$mmdd.Z .
cp /data/ftp/recv_box/8G?$yyyymmdd.9208 .
/usr/bin/uncompress  ffpr.9208.$mmdd.Z
tar xvf ffpr.9208.$mmdd  
sh /home/zichh/sh/yqh
cp /data/ftp/recv_box/920866LNRP*.$yyyymmdd .
cd /data/newrpt/9150/$yyyymmdd
cp /data/ftp/recv_box/ffpr.9150.$mmdd.Z .
cp /data/ftp/recv_box/8G?$yyyymmdd.9150 .
/usr/bin/uncompress  ffpr.9150.$mmdd.Z
tar xvf ffpr.9150.$mmdd
clear
tput cup 6 15

echo "储 蓄 会 计 报 表 数 据 解 压 工 作 完 毕!"

论坛徽章:
0
17 [报告]
发表于 2004-06-28 11:20 |只看该作者

crontabs下不能用uncompress吗?

adm请看,就是这个shell除了隐去fpt地址外其它是完全照贴!!!!
手动执行的时候什么问题都没有
放在crontabs下执行的话最后几行里的ffpr.9208.$mmdd.Z和ffpr.9150.$mmdd.Z 两个包解压出来的两个ffpr.9208.$mmdd和ffpr.9150.$mmdd在tar的时候都出现以下错误:
"tar:directory checksum error"

论坛徽章:
0
18 [报告]
发表于 2004-06-28 13:45 |只看该作者

crontabs下不能用uncompress吗?

如果手工执行没问题的话,我建议,在程序运行的开头处,加上source profile的语句,因为crontab里面没有用户自己的profile文件;

  1. . /home/xxx/.profile
复制代码

视你的路径和具体的profile文件名而定;

论坛徽章:
0
19 [报告]
发表于 2004-06-28 16:25 |只看该作者

crontabs下不能用uncompress吗?

恩,我也想过这个问题,其实shell开头的几句就是.profile的内容了(root的)但就是不知道这样执行对不对。能详述一下,具体要怎么加到shell吗?就是你写这样/??
我是用cron里的root的

论坛徽章:
0
20 [报告]
发表于 2004-06-29 08:12 |只看该作者

crontabs下不能用uncompress吗?

后来我又试了加上/.profile在shell的第一行,还是不行,晕死了这回!!!
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP