配置一对多免密登录:https://blog.csdn.net/qq_38704184/article/details/84305854
判断是否是文件
if [ -f $OTHERLINUXFILEPATH ];
then
echo "${OTHERLINUXFILEPATH} is file"
else
echo "${OTHERLINUXFILEPATH} no such file!"
fi
Linux shell下利用scp单项免密进行拷贝文件
如有提示yes/no,自动输入yes
提示输入密码,自动输入
for host in $SERVERS
do
echo "${host}:starting....."
expect -c "
spawn scp -r root@${host}:${OTHERLINUXFILEPATH} ${LINUXFILEPATH};
expect {
*(yes/no)* {send -- yes\r;exp_continue;}
*assword:* {send -- ${LINUXPASSWORD}\r;exp_continue;}
eof {exit 0;}
}"
done
检验远程路径下是否是文件
if expect -c "
spawn ssh ${host} test -e ${file};
expect {
*(yes/no)* {send -- yes\r;exp_continue;}
*assword:* {send -- ${LINUXPASSWORD}\r;exp_continue;}
eof {exit 0;}
}";
then echo "${host} file exists"
else echo "${host} file no such file"
fi
对上一步的exit返回值进行判断
为0则继续执行
非0下面给出错误提示
if [ "$?" = "0" ];
then
ls_date=`date +%Y-%m-%d`
java -jar "${JARPATH}" "${TABLENAME}" "${TABLEFILEPATH}" "${FIELDS}" "${DRIVERCLASSNAME}" "${URL}" "${USERNAME}" "${PASSWORD}"
else
echo "java -jar "$JARPATH" "$TABLENAME" "$TABLEFILEPATH" "$FIELDS" "$DRIVERCLASSNAME" "$URL" "$USERNAME" "$PASSWORD" error"
1>&2
exit 1
fi