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
相关推荐
bush413 小时前
使用root账号ssh登录虚拟机ubuntu
运维·ubuntu·ssh
AAA 建材批发王哥(天道酬勤)2 天前
SSH(安全外壳协议)可以基于多种加密算法
运维·安全·ssh
cooldream20092 天前
升级 OpenSSL 的详细步骤(解决 SSH 漏洞的前提)
运维·ssh·openssl
coderWangbuer4 天前
基于SSH的酒店管理系统的设计与实现 (含源码+sql+视频导入教程+文档+PPT)
运维·sql·ssh
金州饿霸5 天前
Mac通过ssh连接工具远程登录服务器( Royal TSX安装及使用)
大数据·运维·ssh
敲代码不忘补水5 天前
使用 SSH 连接 Docker 服务器:IntelliJ IDEA 高效配置与操作指南
服务器·docker·ssh·intellij idea
多恩Stone5 天前
【vs code(cursor) ssh连不上服务器(2)】但是 Terminal 可以连上,问题解决 ✅
服务器·ssh·github
WMYeah7 天前
Goland使用SSH远程Linux进行断点调试 (兼容私有库)
linux·golang·go·ssh·goland
&黄昏的乐师8 天前
多无人机通信(多机通信)+配置ssh服务
linux·服务器·ssh·无人机
zy happy10 天前
Linux之我不会
linux·运维·服务器·ssh·apache