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 天前
vscode实现ssh远程连接
ide·vscode·ssh
dnpao2 天前
告别密码和防火墙——将 Git 仓库从 HTTPS 切换到 SSH 连接
git·https·ssh
kyle~3 天前
计算机网络---安全外壳协议(SSH,Secure Shell)
运维·计算机网络·安全·ssh
方知我3 天前
使用VSCode进行SSH远程连接时无法与xxx建立连接
ide·vscode·ssh
AWS官方合作商4 天前
AWS EC2实例重启后SSH/SFTP连接失败的全面排查指南
云计算·ssh·aws
祎直向前4 天前
在Ubuntu中安装并配置ssh
linux·ubuntu·ssh
网络精创大傻6 天前
Terminator SSH 管理器 — 一款适用于 Terminator 的精美 SSH 连接插件
运维·ssh
HIT_Weston6 天前
23、【Ubuntu】【远程开发】内网穿透:SSH 反向隧道
linux·ubuntu·ssh
catoop6 天前
在 WSL 的 Ubuntu 中安装和配置 SSH 服务
linux·ubuntu·ssh
lxmyzzs7 天前
vscode-ssh无法进入docker问题解决
vscode·docker·ssh