使用shell脚本批量上传文件 100

我在/root/t1目录下,有t1.txt,t2.txt,还有个文件夹t11,t11中还有文件y1.txt,使用shell脚本怎样才能把t1目录下的所有文件一次性上传到F... 我在/root/t1目录下,有t1.txt,t2.txt,还有个文件夹t11,t11中还有文件y1.txt,使用shell脚本怎样才能把t1目录下的所有文件一次性上传到FTP服务器上。下面是我的脚本,但只能上传t1.txt,t2.txt,文件夹t11中的内容没有上传。

#!/bin/bash
updir=/root/tmp #要上传的文件夹
todir=tmp #目标文件夹
ip=127.0.0.1 #服务器
user=username #ftp用户名
password=passwd #ftp密码
sss=`find $updir -type d -printf $todir/'%P\n'| awk '{if ($0 == "")next;print "mkdir " $0}'`
aaa=`find $updir -type f -printf 'put %p %P \n'`
ftp -nv $ip <<EOF
user $user $password
type binary
prompt
$sss
cd $todir
$aaa
quit
EOF
展开
 我来答
wallcopper
2017-07-31 · TA获得超过3447个赞
知道大有可为答主
回答量:1986
采纳率:86%
帮助的人:1785万
展开全部
1、设置ssh无密码访问
2、用scp -R ,例如
scp -R /root/tmp root@server:/root
3、或者用rsync命令,例如
#!/bin/sh
/usr/bin/rsync -av '-e ssh -p 22' root@172.16.1.1:/root/tmp /root/
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式