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
相关推荐
小猫挖掘机(绝版)28 分钟前
通过tailscale实现一台电脑上vscode通过ssh连接另一台电脑上的VMware Linux 虚拟机
linux·windows·vscode·ubuntu·ssh
方先森有点懒1 小时前
CentOS 7.2 虚机 ssh 登录报错在重启后无法进入系统
linux·运维·centos·ssh
喜欢你,还有大家3 小时前
SSH服务远程安全登录
运维·安全·ssh
qinyia5 小时前
解锁服务器网络配置新姿势:Wisdom SSH 助力之旅
服务器·网络·ssh
三无少女指南1 天前
WSL2环境下因服务器重装引发的SSH连接问题排查记录
运维·服务器·ssh
久绊A1 天前
指定端口-SSH连接的目标(告别 22 端口暴力破解)
linux·网络·ssh
qinyia2 天前
Wisdom SSH 是一款集成了强大 AI 助手功能的 SSH 工具,助你高效管理服务器。
服务器·人工智能·ssh
半梦半醒*3 天前
ansible中的角色(roles)
linux·运维·自动化·ssh·ansible·负载均衡
来一碗刘肉面4 天前
git中使用SSH的配置
运维·git·ssh
半梦半醒*4 天前
ansible中配置并行以及包含和导入
linux·运维·ssh·ansible·负载均衡