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
相关推荐
学习中....20 小时前
Claude Code + mcp-ssh-manager:让AI成为随身运维专家
运维·ssh
小CC吃豆子1 天前
Then库的原理是什么?
运维·ssh
dlhto1 天前
Kiro Remote SSH 无法连接远程服务器问题排查与解决
运维·服务器·ssh
奶油话梅糖1 天前
解决Windows SSH无法连接老旧网络设备(路由器交换机)
运维·windows·ssh
bing_feilong1 天前
windows和ubuntu: ssh失败
网络·ubuntu·ssh
云霄IT1 天前
ssh使用代理连接服务器:基本用法使用ncat
运维·服务器·ssh
奔跑吧邓邓子1 天前
从0到1:SSH安全连接配置全攻略
ssh·配置·安全连接·全攻略
甜甜不吃芥末1 天前
GitLab 配置 SSH 密钥完整教程
运维·ssh·gitlab
Shanxun Liao2 天前
Cenots 7.9 配置多台 SSH 互信登陆免密码
linux·运维·ssh
南棱笑笑生2 天前
20251224给飞凌OK3588-C开发板适配Rockchip原厂的Buildroot【linux-6.1】系统时确认ssh服务【内置dropbear】
linux·c语言·ssh·rockchip