龙空技术网

使用ssh 批量上传文件

IT生涯 694

前言:

此时咱们对“nginx转发ssh”大致比较关心,小伙伴们都需要分析一些“nginx转发ssh”的相关资讯。那么小编也在网上收集了一些对于“nginx转发ssh””的相关内容,希望看官们能喜欢,你们快快来了解一下吧!

上传文件大多数用的是ftp,但是用ftp有一点不好,就是本地和远程的目录要对应,这样就要在多个目录下去切换,这样挺麻烦的,如果不注意的话,很有可能传错。所以想了个办法利用scp来批量上传文件或者目录。

一、scp上传不要输入密码

如果要用scp来上传文件,第一步就要去掉scp上传时要输入密码。要不然就没办法批量上传了。具体请参考:ssh 不用输入密码

二、ssh批量上传脚本

1、要上传的文件列表放到一个test文件中

root@ubuntu:/home/zhangy# cat test/home/zhangy/test/aaa/home/zhangy/test/nginx.conf/home/zhangy/test/test.sql/home/zhangy/test/pa.txt/home/zhangy/test/password

上面就要上传的文件。

2、批量上传的脚本

vim file_upload.sh[neiqian]

#!/bin/shDATE=`date +%Y_%m_%d_%H`if [ $1 ]then for file in $(sed '/^$/d' $1) //去掉空行 do if [ -f $file ] //普通文件 then res=`scp $file $2:$file` //上传文件 if [ -z $res ] //上传成功 then echo $file >> ${DATE}_upload.log //上传成功的日志 fi elif [ -d $file ] //目录 then res=`scp -r $file $2:$file` if [ -z $res ] then echo $file >> ${DATE}_upload.log fi fi doneelse echo "no file" >> ${DATE}_error.logfi

上传成功后,返回的是一个空行,上传不成功,什么都不返回

[erji]3、上传的格式[erji]

./file_upload.sh test 192.168.1.13

test是上传列表文件,[neiqian]192.168.1.13文件要传到的地方。

标签: #nginx转发ssh #ubuntu上传文件scp #ubuntutxt批量添加信息 #ubuntussh上传文件到服务器