[英]bash script to upload files to sftp
我正在寻找创建一个智能脚本以将文件上传到sftp站点。 我无法使用scp,因为我无法控制sftp站点,而且供应商不允许公钥身份验证。
#!/bin/bash
read -p "Do you want to list the sftp site contents (y/n): " list
read -p "Upload Selected file, type the name of the file: " uploadfilename
conenctsfttp() {
export SSHPASS=****
sshpass -e sftp -oBatchMode=no -b - testuser@example.com
}
listfiles() {
if [[ $list = y ]];
then
conenctsfttp <<< $'ls\n bye'
else
echo not list
fi
}
uploadfilen() {
# if [[ $uploadfilename = y ]];
# then
conenctsfttp << EOF
put $(uploadfilename)
EOF
}
listfiles
uploadfilen
我如何使脚本读取文件名并将文件上传到sftp服务器。 文件名永远不会被拾取,并且会进入无限循环。 如果可能的话,我想定义一个文件上传位置。
$(uploadfilename)
应该是$uploadfilename
。
$(...)
是命令替换的另一种形式。 要引用(检索)变量中的值,您想使用$variable
语法。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.