windowslinux通过ftp从ftp服务器上传和下载

Posted 万载一梦

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了windowslinux通过ftp从ftp服务器上传和下载相关的知识,希望对你有一定的参考价值。

最近需要用到文件的上传和下载,查看我们使用的系统,发现有一个进程为t_ftpd,怀疑其为一个ftp的守护进程,于是想要用ftp的方式实现。

在windows上使用bat脚本的方式实现:

首先写一个bat脚本:

download.bat

@echo off
ftp -s:E:\Sylixos\SylixOS_Qt\build-TCWareWigget-Desktop_Qt_5_7_1_MinGW_32bit-Debug\debug\ftp\ftp.txt

这样就会调用ftp.txt文件

ftp.txt

open 10.1.26.11
root
root
ascii prompt off lcd E:\Sylixos\SylixOS_Qt\build
-TCWareWigget-Desktop_Qt_5_7_1_MinGW_32bit-Debug\debug\download cd /apps/goahead get auth.txt close bye quit

这样就实现了文件的下载。

这里详细说明一下

@echo off 关闭回显

ftp -s:$
PATH ftp命令

open 10.1.26.11 建立指定ftp服务器连接,可指定连接端口

binary
设置文件传输模式为binary,缺省为ascii。binary模式不会对数据进行任何处理,ascii模式会将回车换行

   转换为本机的回车字符。关于binary和ascii传输模

prompt off 下载 prompt on 上传

lcd local-dir:将本地工作目录切换至local-dir(注意windows路径和linux路径的区别)

cd remote-dir:进入远程主机目录remote-dir

mget *.gz 批量下载gz结尾文件 mput *.gz 批量上传gz结尾文件 我这里批量测试始终失败,不知什么原因,最后选择单个文件下载上传

close 中断与远程服务器的ftp会话

bye 退出ftp会话过程

 quit 退出

同理类似得到linux下的shell脚本:

#!/bin/bash
ftp -niv <<- EOF
open 10.1.26.11
user root root
ascii
cd /apps/goahead
lcd ./
prompt off
get auth.txt
close
bye
EOF
至此,通过windows脚本,linux脚本从ftp服务器上传和下载文件完成,通过测试。
 

 



















以上是关于windowslinux通过ftp从ftp服务器上传和下载的主要内容,如果未能解决你的问题,请参考以下文章

通过 ssh 隧道的 ftp [关闭]

通过带有PHP代码的Web服务器将应用程序上的本地文件上传到FTP服务器

Android FTP 意图

通过终端存档/压缩命令 FTP?

java如何实现将FTP文件转移到另一个FTP服务器上

搭建FTP服务