Linux下使用shell实现上传linux下某个目录下所有文件到ftp

本文介绍了一种使用Shell脚本实现FTP批量上传的方法。通过两个脚本:upload_to_ftp_command.sh用于单个文件上传,foeach_directory_and_uploadfile_to_ftp.sh用于遍历目录并调用单文件上传脚本,实现了目录内文件的自动化上传。

首先我们需要搞清楚单个文件怎么上传,把这个单文件上传到ftp上的实现命名为一个:upload_to_ftp_command.sh

之后,需要弄清楚怎么实现遍历一个目录下的所有文件的,把这个遍历某个目录下的文件实现命名为:foeach_directory_and_uploadfile_to_ftp.sh。

upload_to_ftp_command.sh

#!/bin/bash
FTILE_NAME=$1
ftp -n <<- EOF
open 100.170.141.26
user jy new.abc$
cd /Temp/a_datang/s1mme1031
bin
put $FTILE_NAME
bye
EOF

foeach_directory_and_uploadfile_to_ftp.sh

#!/bin/bash

for file in ./*
do if test -f $file then echo $file ' is file' ./upload_to_ftp_command.sh $file fi if test -d $file then echo $file ' is directory' fi done

调用foeach_directory_and_uploadfile_to_ftp.sh:

$ ./foeach_directory_and_uploadfile_to_ftp.sh 
./000000_0  is file
./000001_0  is file
./000002_0  is file
./000003_0  is file
./000004_0  is file
./000005_0  is file
./000006_0  is file
./000007_0  is file
./000008_0  is file
./000009_0  is file
./000010_0  is file
./000011_0  is file
./000012_0  is file
./000013_0  is file
./000014_0  is file
./000015_0  is file
./000016_0  is file
./000017_0  is file
./000018_0  is file
./000019_0  is file
./000020_0  is file
./000021_0  is file
./000022_0  is file
./upload_to_ftp_command.sh  is file
./foeach_directory_and_uploadfile_to_ftp.sh  is file

 

参考文章:

 http://jingyan.baidu.com/article/22fe7ced209c073003617f47.html?st=2&os=0&bd_page_type=1&amp;net_type=2

http://blog.sina.com.cn/s/blog_5ad08c1601013gl2.html

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值