SHELL 脚本: 导出NEO4j DUMP并上传SFTP

前提

开通sftp账号

安装expect

示例

sh 复制代码
NEO4J_HOME=/path/to/neo4j # neo4j 安装目录
DUMP_PATH=/data/dump # DUMP本地保存目录
DUMP_FILE=neo4j_$(date +%F).dump #导出文件名称
UPLOAD_DIR=/path/to/stfp/dump/  #上传目录
$NEO4J_HOME/bin/neo4j-admin dump --database=neo4j --to=$DUMP_PATH/$DUMP_FILE

ftp_ip=xx.xx.xx.xx
ftp_port=222
ftp_user=xxxxx
ftp_password=xxxxxxx

/usr/bin/expect <<-EOF
set timeout 100
spawn sftp -P $ftp_port $ftp_user@$ftp_ip
expect {
"*yes/no*" { send "yes
"; exp_continue }
"*assword:" { send "$ftp_password
" }
}
expect "sftp>"
send "lcd ${DUMP_PATH}
"
expect "sftp>"
send "cd ${UPLOAD_DIR}
"

expect "sftp>"
set timeout -1
send "put $DUMP_FILE
"

expect "sftp>"
send "quit
"
expect eof
EOF
相关推荐
程序员陆通2 天前
CentOS/AlmaLinux 9 中 SSH 服务启动失败:OpenSSL 版本不匹配解决
linux·centos·ssh
小马哥编程2 天前
JWT 是由哪三个部分组成?如何使用JWT进行身份认证?
网络协议·http·架构·ssh
小马哥编程3 天前
【软考架构】案例分析-web应用设计:SSH 和 SSM(Spring + Spring MVC + MyBatis ) 之间的区别,以及使用场景
前端·架构·ssh
半夏微凉半夏殇3 天前
VSCode Remote-SSH:无缝远程开发完全指南
ide·vscode·ssh
YuanDaima20483 天前
GitHub 与 Gitee 多平台 SSH Key 配置指南
gitee·开源·ssh·github·开源软件·key·免密登录
Fluency-114 天前
ubuntu中ssh连接root用户
linux·ubuntu·ssh
潮汐退涨月冷风霜4 天前
VSCode SSH远程连接失败 最速解决方案
ide·vscode·ssh
2021黑白灰4 天前
windows11 vscode ssh远程linux服务器/虚拟机 免密登录
linux·服务器·ssh
可乐大数据5 天前
macOS 一键免密登录阿里云 ECS:SSH 密钥对认证完整指南
macos·阿里云·ssh
柯衍ky5 天前
Mac通过命令行开启ssh服务
运维·macos·ssh