加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

shell通过scp命令实现简单数据推送

发布时间:2020-12-15 16:53:28 所属栏目:安全 来源:网络整理
导读:第一部分:获取数据路径 #!/bin/bash#GetPath.sh#用途:获取某天到某天,某个时间段的数据路径#路径输出到path.txt文件中###################StepOne.####################path.txtfunctiontraceInfoWriter{echo-e"33[40m33[1;36m"$*"33[0m"}functionus

第一部分:获取数据路径

#!/bin/bash
#GetPath.sh
#用途:获取某天到某天,某个时间段的数据路径
#路径输出到path.txt文件中
###################StepOne.####################
>path.txt
functiontraceInfoWriter
{
echo-e"33[40m33[1;36m"$*"33[0m"
}
functionusage
{
traceInfoWriter"Usage:"
traceInfoWriter"$0-ddate-{例:20170101-20171231}--hhour-{例:00-24}-"
traceInfoWriter"-d:daterange.(20170101-20171231)"
traceInfoWriter"-h:hourrange.(00-24)"
traceInfoWriter"-H:helpinfo"
traceInfoWriter"Example:sh$0-d20170501-20170612-h02-08"
exit
}
[[0-eq$#]]&&usage
whilegetopts"d:h:H"ARG
do
case$ARGin
d)
exportDate=$OPTARG
;;
h)
exportHour=$OPTARG
;;
H)
usage
;;
?)
echo"Unkonwargument!"
echo"Only-d-h-Hoptionsaresupported~"
exit1
esac
done
stime=${Date:0:8}
etime=${Date:9:17}
sh=${Hour%-*}
eh=${Hour##*-}
if[[$stime-gt$etime]]||[[$sh-gt$eh]]
then
echo"Errorformat."
exit1
fi
while:
do
foriin`seq-s""-w$sh$eh`
do
ls/FY4/FY4A/AGRI/L1/FDI/DISK/2017/$stime/FY4A-_AGRI--_N_DISK_*E_L1-_*-_MULT_NOM_${stime}${i}*_*_4000M_V0001.HDF>>path2.txt2>/dev/null
done
stime=$(date-d"$stime1day"+%Y%m%d)
if[[$stime-gt$etime]];then
break;
fi
done

第二部分:通过scp传输数据

#!/bin/bash
#TransferData.sh
#读取path.txt文件传输数据
#remotepath目标服务器路径
##################StepTwo#################
user=gsics
host=10.24.173.162
passwd=gsics03
remotepath="/home/gsics/user/wangp/data"
forfilepathin`catpath.txt`
do
expect-c"
settimeout30
spawnscp$filepath$user@$host:${remotepath}
expect{
"*yes/no"{send"yesr";exp_continue}
"*?assword:"{send"$passwdr"}
}
interact
"
done

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读