关闭

使用wget下载Oracle软件

839人阅读 评论(0) 收藏 举报

由于MOS或者oracle的edelivery上的软件在下载时都需要认证,所以不能使用迅雷之类的下载工具下载,所以一般情况下就都使用浏览器下载,但是有时候软件可能很大需要下载很久,这样你就只能一直开着浏览器,如果不小心把浏览器关闭了,那么你之前的下载可能(如果不能断点的话)都白费了。不过还好,oracle的软件还可以使用wget工具下载,这样你就可以把下载任务提交到后台去,你就可以干你的事情去了,甚至关闭机器都可以,只要你设置了wget为可断点即可。废话不多说,把下面的脚本保存到一个文件,如wget.sh。


#!/bin/bash
dowget(){
DOWN_FILE=$1
if [ "$DOWN_FILE" = "" ];then
echo "usage: wget.sh download_file_url"
echo " e.g: wget.sh http://download.oracle.com/otn/berkeley-db/db-5.2.36.tar.gz"
exit
fi

LANG=C
export LANG
WGET=/usr/bin/wget
OUTPUT_DIR=/root/Download
OUTPUTFILE=`basename $DOWN_FILE`
LOG_DIR=.
LOGFILE=$LOG_DIR/$OUTPUTFILE-`date +%Y%m%d%H%M%S`.log

SSO_RESPONSE=`$WGET --user-agent="Mozilla/5.0" $DOWN_FILE 2>&1|grep Location|grep orasso`
SSO_TOKEN=`echo $SSO_RESPONSE| cut -d '=' -f 2|cut -d ' ' -f 1`
SSO_SERVER=`echo $SSO_RESPONSE| cut -d ' ' -f 2|cut -d 'p' -f 1,2`
SSO_AUTH_URL=sso/auth
AUTH_DATA="ssousername=$SSO_USERNAME&password=$SSO_PASSWORD&site2pstoretoken=$SSO_TOKEN"

$WGET $WGET_OPTION --user-agent="Mozilla/5.0" --secure-protocol=auto --post-data $AUTH_DATA $SSO_SERVER$SSO_AUTH_URL -O $OUTPUT_DIR/$OUTPUTFILE -o $LOGFILE 2>&1
}

fun_main(){
echo ""
dowget http://download.oracle.com/otn/aix/oem/1110/AIX_Grid_Control_agent_download_11_1_0_1_0.zip ----这些地址需要你提前准备好。
dowget http://download.oracle.com/otn/nt/oem/1110/Windows_X64_Grid_Control_agent_download_11_1_0_1_0.zip
dowget http://download.oracle.com/otn/linux/oem/1110/Linux_x86_64_Grid_Control_agent_download_11_1_0_1_0.zip
dowget http://download.oracle.com/otn/linux/oem/1110/Linux_Grid_Control_agent_download_11_1_0_1_0.zip
dowget http://download.oracle.com/otn/nt/oem/1110/Win32_Grid_Control_agent_download_11_1_0_1_0.zip
}

#注:如果需要把作业提交到后台请在脚本里面设置用户密码
export SSO_USERNAME=MOS的账户名称
export SSO_PASSWORD=MOS的账户密码
if [ "$SSO_USERNAME" = '' ];then
echo "Enter the SSO_USERNAME:"
read SSO_USERNAME
fi
if [ "$SSO_PASSWORD" = '' ];then
echo "Enter the SSO_PASSWORD:"
read SSO_PASSWORD
fi


if [ "$SSO_USERNAME" = '' ];then
echo "Must set SSO_USERNAME"
exit
fi
if [ "$SSO_PASSWORD" = '' ];then
echo "Must set SSO_PASSWORD"
exit
fi
export SSO_USERNAME
export SSO_PASSWORD
export WGET_OPTION=${WGET_OPTION}" --limit-rate=256k -c"

#使用-d参数表示直接批量(如上)按顺序下载
if [ "$1" = '-d' ];then
fun_main
else
if [ `echo $1|grep -i '^http'` ];then
dowget $1 ----你也可以把地址做为参数传进去
else
dowget
fi
fi
如:

[root@instsvr1 Download]# nohup wget.sh -d &

或者

[root@instsvr1 Download]# nohup wget.sh http://download.oracle.com/otn/aix/oem/1110/AIX_Grid_Control_agent_download_11_1_0_1_0.zip &





0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:144808次
    • 积分:2322
    • 等级:
    • 排名:第16687名
    • 原创:92篇
    • 转载:9篇
    • 译文:0篇
    • 评论:7条
    最新评论