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

首先我们需要搞清楚单个文件怎么上传,把这个单文件上传到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

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

相关推荐