Linux中如何使用ftp命令,包括如何连接ftp服务器,上传or下载文件以及创建文件夹。虽然现在有很多ftp桌面应用(例如:FlashFXP),但是在服务器、SSH、远程会话中掌握命令行ftp的使用还是很有必要的。

1.ftp命令

  使用格式:ftp [-v] [-d] [-i] [-n] [-g] [-s:filename] [-a] [-w:windowsize] [computer]

    -v:禁止显示远程服务器响应信息

    -n:禁止自动登录

    -i:多文件传输过程中关闭交互提示

    -d:启用调试,显示所有客户端与服务器端传递的命令

    -g:禁用文件名通配符,允许在本地文件和路径名中使用

  实例:ftp 122.122.122.122 2222

  输入用户名、密码,即可完成登录。

2.目录操作

  FTP命令可以列出、移动、创建文件夹。

  • ls -- 打印目录列表
  • !ls -- 查看本地目录
  • cd -- 改变目录
  • mkdir -- 创建文件夹

3.使用FTP下载文件

  在下载一个文件之前,首先需要使用lcd命令设定本地接收目录位置。

  • lcd -- 指定下载目录
  • get file.txt [file_new.txt] -- 下载文件 支持更改名字
  • mget *.txt -- 使用mget + 通配符下载多个文件

4.使用FTP上传文件

  • put file.txt [file_new.txt] -- 上传文件 支持更改名字
  • put /home/data/cwh/file.txt -- 绝对路径
  • mput *.txt -- 上传多个文件

5.关闭FTP连接

  完成FTP工作后,为了安全起见需要关闭连接。有3个命令可以关闭连接:

  • bye -- 关闭连接
  • exit -- 关闭连接
  • quit -- 关闭连接
  • close -- 关闭连接

6.其他命令

  • ? -- 查询ftp命令
  • help -- 查询ftp命令
  • open [ftp server name] -- 和指定的远程Linux FTP服务器连接
  • user [user name] [password] -- 使用指定远程Linux FTP服务器的用户登录
  • pwd -- 显示当前路径
  • ls -- 列出目录和文件
  • dir -- 列出目录和文件(同上)
  • mkdir [foldname] -- 创建指定目录
  • rmdir [foldname] -- 删除指定目录
  • cd -- 切换目录
  • delete [filename] -- 删除文件
  • rename [filename] [newfilename] -- 重命名
  • close -- 关闭连接 但保留FTP命令参数提示
  • disconnect -- 关闭连接 但保留FTP命令参数提示(同上)
  • bye -- 结束连接
  • quit -- 结束连接
  • ! -- 直接从远程Linux FTP进入到本地Shell中
  • exit -- (接上步)从本地Shell环境返回远程Linux FTP中
  • !ls -- 列出本地机器目录和文件
  • lcd [foldname] -- 更改本地工作目录
  • binary -- 使用二进制传输文件
  • prompt -- 切换提示(使用mput或mget上传下载多个文件时避免提示)
  • case -- 在使用mget时,将远程主机文件名的大写转换为小写字母
  • cdup -- 进入远程主机目录的父目录
  • system -- 显示远程主机的操作系统类型
  • hash  -- 每传输1024字节,显示一个hash符号(#)
  • status -- 显示当前ftp状态
Connected to 122.122.122.122.
No proxy connection.
Mode: stream; Type: binary; Form: non-print; Structure: file
Verbose: on; Bell: off; Prompting: off; Globbing: on
Store unique: off; Receive unique: off
Case: off; CR stripping: on
Ntrans: off
Nmap: off
Hash mark printing: off; Use of PORT cmds: on
Tick counter printing: off

7、一个完整的例子

 “开始”→“运行”→输入“FTP”
open 122.122.122.122 2222
用户名
密码
查看目录
-- dir 文件及目录
-- ls 只查看文件
mkdir xxx 新建目录
cd xxx 切换目录
binary 采用二进制传输
lcd /home/data 定位本地目录
!dir 查看本地目录及文件
put xyz.txt 上传文件(mput)
get xyz.txt 下载文件(mget)
delete *.txt 删除文件
cd.. 返回上一级
rmdir xxx 删除空文件夹
bye 退出ftp服务器
pwd 查看当前目录

END 2019-04-16 23:22:14

Linux学习笔记:使用ftp命令上传和下载文件的更多相关文章

  1. linux ftp批量上传和下载文件

    一.登录ftp 输入 ftp 192.168.1.111 输入用户名:ftpuser 输入密码:aaa123 二.转到目标目录 输入:cd   test   ----test为文件夹 三.批量上传 输 ...

  2. xshell 使用命令上传、下载文件

    打开xshell, ①检查是否已经安装了上传下载的命令,#rpm -qa |grep lrzsz [root@mjy logs]# rpm -qa |grep lrzszlrzsz-0.12.20-2 ...

  3. FTP服务器上传,下载文件

    public class FtpUtil { /** * * @param host FTP服务器地址 * @param port FTP服务器端口 * @param username FTP登录账号 ...

  4. 如何在Linux服务器和windows系统之间上传与下载文件

    Do not let dream just be your dream. 背景:Linux服务器文件上传下载. XShell+Xftp安装包(解压即用)百度网盘链接:https://pan.baidu ...

  5. 在开发框架中使用FTP辅助类上传或者下载文件,方便管理附件内容

    在有些系统应用里面,我们需要对应用服务器.数据库服务器.文件服务器进行分开,文件路径等信息存储在数据库服务器里面,但文件内容则存储在文件服务器里面,通过使用FTP进行文件的上传下载,从而实现更加高效的 ...

  6. linux使用rz、sz快速上传、下载文件

    平时都使用ftp工具进行文件的上传下载操作,针对于小文件的简单传输来说,有下面好的方法: 首先安装rz.sz工具: #yum install lrzsz 上传文件:rz 下载文件:sz 上传文件在sh ...

  7. Mac iTerm2使用lrzsz上传和下载文件

    Mac iTerm2使用lrzsz对服务器上传和下载文件 安装工具 首先需要安装iTerm2和homebrew,在终端中执行(打开终端,使用搜索(command + space),输入terminal ...

  8. linux命令学习笔记(26):用SecureCRT来上传和下载文件

    用SSH管理linux服务器时经常需要远程与本地之间交互文件.而直接用SecureCRT自带的上传下载功能无疑是最方便的,SecureCRT下的文件传输协议有ASCII.Xmodem.Zmodem. ...

  9. linux下常用FTP命令 上传下载文件【转】

    1. 连接ftp服务器 格式:ftp [hostname| ip-address]a)在linux命令行下输入: ftp 192.168.1.1 b)服务器询问你用户名和密码,分别输入用户名和相应密码 ...

随机推荐

  1. 多目标遗传算法 ------ NSGA-II (部分源码解析)目标函数 problemdef.c

    /* Test problem definitions */ # include <stdio.h> # include <stdlib.h> # include <ma ...

  2. MySQL聚合函数、控制流程函数

    [正文] 一.navicat的引入:(第三方可视化的客户端,方便MySQL数据库的管理和维护) NavicatTM是一套快速.可靠并价格相宜的数据库管理工具,专为简化数据库的管理及降低系统管理成本而设 ...

  3. java类的回顾

    1.类是某一批对象的抽象,对象才是一个具体的存在的实体,你我他都是人的实例,而不是人的类.2.类可以包含三种最常见的成员:构造器,成员变量,方法3.4.java世界里,属性,如某个类具有age属性,通 ...

  4. es6三个点运算符

    ...扩展运算符:可以将数组或对象里面的值展开 const b = {a:1,b:2} console.log({...b,c:3}); //{a:1,b:2,c:3} 一定程度上可以替代apply方 ...

  5. ubuntu 18.04下character_set_server设置为utf8

    打开/etc/mysql/mysql.conf.d/mysql.cnf添加以下代码: character-set-server = utf8 然后重启mysql即可

  6. android ListView使用

    1.DbOpenHelper package dbOpenHelper; import android.content.Context; import android.database.sqlite. ...

  7. The connection to adb is down, and a severe error has occured(Android模拟器端口被占用)

    相信不少同学和我一样遇到这个问题,有时候搞的还要重启电脑,那究竟是什么原因导致的呢,很明显,你的端口被占用了,那下面给出终极解决方案 一.首先描述症状,如下图 二.出现问题了,首先确定你的sdk目录是 ...

  8. UE4的AI学习(1)——基本概念

    AI学习当中,不学习行为树基本概念就不能明白具体实例中的操作意义,但是没有经过具体实例实验,又觉得基本概念抽象难以理解.建议先泛读(1)(2)后再对具体的细节进行死磕,能较深的理解行为树的具体概念.第 ...

  9. Python GUI工具Tkinter以及拖拉工具Page安装

    如果使用Tkinter作为Python GUI工具,我们需要安装Tkinter,这个使用conda或者pip即可: conda install -c anaconda tk 为了提高界面编写效率,可以 ...

  10. jvm系列一、java类的加载机制

    一.什么是类的加载 类的加载指的是将类的.class文件中的二进制数据读入到内存中,将其放在运行时数据区的方法区内,然后在堆区创建一个java.lang.Class对象,用来封装类在方法区内的数据结构 ...