帮我编写一个shell脚本 使用sftp 登录远程服务下载 上传 删除 查看指定路径的脚本 并注释
时间: 2024-05-20 17:18:20 浏览: 107
shell脚本实现ftp上传下载文件功能
3星 · 编辑精心推荐
#!/bin/bash
# 定义远程主机IP地址、用户名和密码
remote_host="remote.server.com"
remote_user="username"
remote_password="password"
# 定义本地文件保存路径
local_path="/path/to/local/folder"
# 定义远程文件路径
remote_path="/path/to/remote/folder"
# 定义SFTP命令
SFTP_CMD="sftp -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null"
# 下载文件
download_file() {
$SFTP_CMD $remote_user@$remote_host << EOF
cd $remote_path
get $1 $local_path/$1
bye
EOF
}
# 上传文件
upload_file() {
$SFTP_CMD $remote_user@$remote_host << EOF
cd $remote_path
put $1
bye
EOF
}
# 删除文件
delete_file() {
$SFTP_CMD $remote_user@$remote_host << EOF
cd $remote_path
rm $1
bye
EOF
}
# 查看远程路径
view_remote_path() {
$SFTP_CMD $remote_user@$remote_host << EOF
cd $remote_path
ls -l
bye
EOF
}
# 主程序
case $1 in
"download")
download_file $2
;;
"upload")
upload_file $2
;;
"delete")
delete_file $2
;;
"view")
view_remote_path
;;
*)
echo "Usage: $0 {download|upload|delete|view} [filename]"
exit 1
esac
exit 0
阅读全文