linux下实现ftp上传文件

xiaohouye 2020-02-21

上传:

#!/bin/sh

set -x
set -e 
local_rootPath=/hadoop/datadir/windeploy/temp

host="192.168.12.2"   # 需要上传的ftp地址
port="21"         # 端口
user="ftpuser"   # ftp登陆的用户名  
passwd="123456"    # ftp 登陆用户口令
customer="aaa"

ftp -n<<!  # !是一个开始~结束符,可以换做其他的,如EOF,注意前后一致
open $host $port
user $user $passwd
binary     # 通过二进制上传
hash  
cd /      # 切换到ftp的根目录下
lcd $local_rootPath/$customer  # 切换到本地服务器的目录下
prompt
mput *     # 上传 $local_rootPath/$customer 目录下的所有文件到ftp的根目录
close bye !

下载:

#!/bin/bash

export file=*.csv  # 要下载的文件类型
host="192.168.1.203"
port="21"
user="user"
passwd="123456"

ftp -v -n <<EOF
open $host $port
user $user $passwd
binary
cd /data  # 切换到ftp目录中
lcd /hadoop/datadir/ggg/file/data  # 定义要下载到本地的目录
mget $file # mget这里可以使用正则批量匹配,如果使用get则只能是下载单个文件
prompt  # 结束交互式
bye
EOF
echo "get from ftp successfully"

  

相关推荐