美文网首页生信笔记服务器
如何在linux命令行中使用ftp命令上传和下载文件

如何在linux命令行中使用ftp命令上传和下载文件

作者: 11的雾 | 来源:发表于2019-07-22 12:14 被阅读0次

这里介绍在 Linux shell 中如何使用 ftp 命令。包括如何连接 FTP 服务器,上传或下载文件以及创建文件夹。尽管现在有许多不错的 FTP 桌面应用,但是在服务器、SSH、远程会话中命令行 ftp 命令还是有很多应用的。比如。需要服务器从 ftp 仓库拉取备份。

步骤一:建立FTP连接

想要连接 FTP 服务器,在命令上中先输入ftp然后空格跟上 FTP 服务器的域名 'domain.com' 或者 IP 地址

ftp domain.com
ftp 192.168.0.1
ftp user@ftpdomain.com

注意: 本例中使用匿名服务器。
替换下面例子中 IP 或域名为你的服务器地址。

步骤 2: 使用用户名密码登录

绝大多数的 FTP 服务器是使用密码保护的,因此这些 FTP 服务器会询问'username'和'password'.
如果你连接到被称作匿名 FTP 服务器(LCTT 译注:即,并不需要你有真实的用户信息即可使用的 FTP 服务器称之为匿名 FTP 服务器),可以尝试anonymous作为用户名以及使用空密码:

Name: anonymous
Password:

之后,终端会返回如下的信息

230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp>

表示登录成功。

步骤 3: 目录操作

FTP 命令可以列出、移动和创建文件夹,如同我们在本地使用我们的电脑一样。ls可以打印目录列表,cd可以改变目录,mkdir可以创建文件夹。
使用安全设置列出目录
ftp> ls
服务器将返回:

200 PORT command successful. Consider using PASV.
150 Here comes the directory listing.
directory list
....
....
226 Directory send OK.

改变目录

ftp> cd directory

服务器将返回:

250 Directory succesfully changed.

步骤 4: 使用 FTP 下载文件

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

lcd /home/user/yourdirectoryname

如果你不指定下载目录,文件将会下载到你登录 FTP 时候的工作目录。
现在,我们可以使用命令 get 来下载文件,比如:
get file

文件会保存在使用lcd命令设置的目录位置。
服务器返回消息:

local: file remote: file
200 PORT command successful. Consider using PASV.
150 Opening BINARY mode data connection for file (xxx bytes).
226 File send OK.
XXX bytes received in x.xx secs (x.xxx MB/s).

使用 put命令上传文件:
put file
当文件不再当前本地目录下的时候,可以使用绝对路径:
put /path/file
同样,可以上传多个文件:
mput *.xls

步骤 6: 关闭 FTP 连接

bye
exit
quit

任意一个命令可以断开FTP服务器连接并返回:

221 Goodbye

需要更多帮助,在使用 ftp 命令连接到服务器后,可以使用help获得更多帮助。via: https://www.howtoforge.com/tutorial/how-to-use-ftp-on-the-linux-shell/

案例:从NCBI下载igblast安装包。

$ftp ftp.ncbi.nih.gov
Connected to ftp.wip.ncbi.nlm.nih.gov.
220-
This warning banner provides privacy and security notices consistent with
applicable federal laws, directives, and other federal guidance for accessing
this Government system, which includes all devices/storage media attached to
this system. This system is provided for Government-authorized use only.
Unauthorized or improper use of this system is prohibited and may result in
disciplinary action and/or civil and criminal penalties. At any time, and for
any lawful Government purpose, the government may monitor, record, and audit
your system usage and/or intercept, search and seize any communication or data
transiting or stored on this system. Therefore, you have no reasonable
expectation of privacy. Any communication or data transiting or stored on this
system may be disclosed or used for any lawful Government purpose.
220 FTP Server ready.
Name (ftp.ncbi.nih.gov:dushiyi): anonymous

上面输入Name;

331 Anonymous login ok, send your complete email address as your password
Password:

230 Anonymous access granted, restrictions apply
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> ls

200 PORT command successful
150 Opening BINARY mode data connection for file list
dr-xr-xr-x   4 ftp      anonymous     4096 Jul 22 02:48 1000genomes
-r--r--r--   1 ftp      anonymous 107375230976 Nov 17  2017 100GB
-r--r--r--   1 ftp      anonymous 10738466816 Nov 17  2017 10GB
-r--r--r--   1 ftp      anonymous 1074790400 Nov 17  2017 1GB
-r--r--r--   1 ftp      anonymous 53688139776 Nov 17  2017 50GB
-r--r--r--   1 ftp      anonymous 5369757696 Nov 17  2017 5GB
-r--r--r--   1 ftp      anonymous     2037 Oct 12  2017 README.ftp
dr-xr-xr-x   8 ftp      anonymous     4096 Feb  8  2016 SampleData
lr--r--r--   1 ftp      anonymous       29 Oct 12  2017 asn1-converters -> toolbox/ncbi_tools/converters
dr-xr-xr-x  12 ftp      anonymous   184320 Nov 22  2014 bigwig
dr-xr-xr-x   5 ftp      anonymous     4096 Jul 21 15:10 bioproject
dr-xr-xr-x   2 ftp      anonymous     4096 Jul 21 09:20 biosample
dr-xr-xr-x  10 ftp      anonymous     4096 Jul 22 02:48 blast
dr-xr-xr-x   3 ftp      anonymous     4096 Sep 13  2004 cgap
dr-xr-xr-x   4 ftp      anonymous     4096 Oct  3  2014 cn3d
dr-xr-xr-x  34 ftp      anonymous     4096 Dec 14  2018 dbgap
dr-xr-xr-x   2 ftp      anonymous     4096 Sep 21  2017 diffexpIR-notebook
dr-xr-xr-x  12 ftp      anonymous     4096 Jul 18  2013 entrez
dr-xr-xr-x   7 ftp      anonymous     4096 Oct 13  2011 epigenomics
dr-xr-xr-x   4 ftp      anonymous     4096 Sep 19  2017 eqtl
dr-xr-xr-x   6 ftp      anonymous     4096 Aug  4  2006 fa2htgs
-r--r--r--   1 ftp      anonymous     3262 Oct 12  2017 favicon.ico
dr-xr-xr-x  13 ftp      anonymous   258048 Jul 22 02:48 genbank
dr-xr-xr-x   6 ftp      anonymous     4096 Feb 28  2018 gene
dr-xr-xr-x 561 ftp      anonymous    45056 Jul 22 02:48 genomes
dr-xr-xr-x 1073741824 ftp      anonymous        0 Jul 21 18:22 geo
dr-xr-xr-x   4 ftp      anonymous     4096 Jul 22 02:48 giab
dr-xr-xr-x  25 ftp      anonymous     4096 Sep 20  2011 hapmap
dr-xr-xr-x   9 ftp      anonymous     4096 Jul  2  2018 hmm
dr-xr-xr-x  15 ftp      anonymous     4096 Mar 22 15:50 mmdb
dr-xr-xr-x   7 ftp      anonymous    86016 Jun 20 18:26 ncbi-asn1
dr-xr-xr-x   2 ftp      anonymous        6 Oct 12  2017 nist-immsa
dr-xr-xr-x   3 ftp      anonymous     8192 Jul  2 16:32 osiris
dr-xr-xr-x   9 ftp      anonymous     4096 Jul 22 02:48 pathogen
dr-xr-xr-x 162 ftp      anonymous     8192 Apr 19 16:07 pub
dr-xr-xr-x  28 ftp      anonymous     4096 Jul 22 02:48 pubchem
dr-xr-xr-x  21 ftp      anonymous     4096 May 13 15:10 pubmed
dr-xr-xr-x  21 ftp      anonymous     4096 Jul 12 16:56 refseq
dr-xr-xr-x  57 ftp      anonymous     4096 Jul 22 02:48 repository
-r--r--r--   1 ftp      anonymous       26 Oct 12  2017 robots.txt
dr-xr-xr-x   3 ftp      anonymous     4096 Jul 22 02:48 seqc
dr-xr-xr-x   6 ftp      anonymous     4096 Jun  4 14:50 sequin
dr-xr-xr-x   4 ftp      anonymous     4096 Jun 23  2016 sky-cgh
dr-xr-xr-x   8 ftp      anonymous     4096 Jul 22 02:48 snp
dr-xr-xr-x  23 ftp      anonymous     4096 Jul 22 02:48 sra
dr-xr-xr-x   2 ftp      anonymous     4096 Sep 29  2004 tech-reports
dr-xr-xr-x  11 ftp      anonymous     4096 Jul 25  2013 toolbox
dr-xr-xr-x   6 ftp      anonymous     4096 Sep  5  2018 tpa
dr-xr-xr-x   5 ftp      anonymous     4096 Aug  9  2016 variation
226 Transfer complete

上面列出当前目录下内容,并且进入指定目录。

ftp> cd blast/executables/igblast/release/
250 CWD command successful
ftp> ls
200 PORT command successful
150 Opening BINARY mode data connection for file list
dr-xr-xr-x   2 ftp      anonymous     4096 Nov  1  2018 1.10.0
dr-xr-xr-x   2 ftp      anonymous     4096 Nov  1  2018 1.11.0
dr-xr-xr-x   2 ftp      anonymous     4096 Nov 29  2018 1.12.0
dr-xr-xr-x   2 ftp      anonymous     4096 Mar  7 19:49 1.13.0
dr-xr-xr-x   2 ftp      anonymous     4096 Apr 29 16:52 1.14.0
dr-xr-xr-x   2 ftp      anonymous     4096 Mar 11  2014 1.3.0
dr-xr-xr-x   2 ftp      anonymous     4096 Jul 30  2014 1.4.0
dr-xr-xr-x   2 ftp      anonymous     4096 Nov  1  2016 1.5.0
dr-xr-xr-x   2 ftp      anonymous     4096 Nov  1  2016 1.6.1
dr-xr-xr-x   2 ftp      anonymous     4096 Oct 13  2017 1.7.0
dr-xr-xr-x   2 ftp      anonymous     4096 Oct 13  2017 1.8.0
dr-xr-xr-x   2 ftp      anonymous     4096 Sep  6  2018 1.9.0
lr--r--r--   1 ftp      anonymous        7 Apr 29 17:40 LATEST -> 1.14.0/
-r--r--r--   1 ftp      anonymous       86 Oct 13  2017 README
dr-xr-xr-x   3 ftp      anonymous     4096 Apr 17 16:59 database
-r--r--r--   1 ftp      anonymous      624 Feb  1  2018 edit_imgt_file.pl
dr-xr-xr-x   8 ftp      anonymous     4096 Apr 29  2014 internal_data
dr-xr-xr-x   3 ftp      anonymous     4096 Apr 29  2014 optional_file
226 Transfer complete
ftp> cd 1.14.0
250 CWD command successful
ftp> ls
200 PORT command successful
150 Opening BINARY mode data connection for file list
-r--r--r--   1 ftp      anonymous     3478 Apr 30 16:15 ChangeLog
-r--r--r--   1 ftp      anonymous 17687750 Apr 29 16:52 ncbi-igblast-1.14.0+.dmg
-r--r--r--   1 ftp      anonymous       59 Apr 29 16:52 ncbi-igblast-1.14.0+.dmg.md5
-r--r--r--   1 ftp      anonymous 14713607 Apr 29 16:52 ncbi-igblast-1.14.0-1.src.rpm
-r--r--r--   1 ftp      anonymous       64 Apr 29 16:52 ncbi-igblast-1.14.0-1.src.rpm.md5
-r--r--r--   1 ftp      anonymous 24002792 Apr 29 16:52 ncbi-igblast-1.14.0-1.x86_64.rpm
-r--r--r--   1 ftp      anonymous       67 Apr 29 16:52 ncbi-igblast-1.14.0-1.x86_64.rpm.md5
-r--r--r--   1 ftp      anonymous 18402750 Apr 29 16:52 ncbi-igblast-1.14.0-src.tar.gz
-r--r--r--   1 ftp      anonymous       65 Apr 29 16:52 ncbi-igblast-1.14.0-src.tar.gz.md5
-r--r--r--   1 ftp      anonymous 22317024 Apr 29 16:52 ncbi-igblast-1.14.0-src.zip
-r--r--r--   1 ftp      anonymous       62 Apr 29 16:52 ncbi-igblast-1.14.0-src.zip.md5
-r--r--r--   1 ftp      anonymous 12628211 Apr 29 16:52 ncbi-igblast-1.14.0-win64.exe
-r--r--r--   1 ftp      anonymous       64 Apr 29 16:52 ncbi-igblast-1.14.0-win64.exe.md5
-r--r--r--   1 ftp      anonymous 40771400 Apr 29 16:52 ncbi-igblast-1.14.0-x64-linux.tar.gz
-r--r--r--   1 ftp      anonymous       71 Apr 29 16:52 ncbi-igblast-1.14.0-x64-linux.tar.gz.md5
-r--r--r--   1 ftp      anonymous 23297125 Apr 29 16:52 ncbi-igblast-1.14.0-x64-macosx.tar.gz
-r--r--r--   1 ftp      anonymous       72 Apr 29 16:52 ncbi-igblast-1.14.0-x64-macosx.tar.gz.md5
-r--r--r--   1 ftp      anonymous 16309449 Apr 29 16:52 ncbi-igblast-1.14.0-x64-win64.tar.gz
-r--r--r--   1 ftp      anonymous       71 Apr 29 16:52 ncbi-igblast-1.14.0-x64-win64.tar.gz.md5
226 Transfer complete
ftp> get ncbi-igblast-1.14.0-x64-linux.tar.gz
local: ncbi-igblast-1.14.0-x64-linux.tar.gz remote: ncbi-igblast-1.14.0-x64-linux.tar.gz
200 PORT command successful
150 Opening BINARY mode data connection for ncbi-igblast-1.14.0-x64-linux.tar.gz (40771400 bytes)
226 Transfer complete
40771400 bytes received in 16.39 secs (2.3726 MB/s)

下载完成。

mget * # 下载所有
lcd  #修改下载路径
prompt off #关闭

相关文章

  • Mac 命令行

    命令行 Linux命令 Curl curl是一个传输文件(上传、下载)的命令行工具,它支持FTP,FTPS,HTT...

  • 如何在linux命令行中使用ftp命令上传和下载文件

    这里介绍在 Linux shell 中如何使用 ftp 命令。包括如何连接 FTP 服务器,上传或下载文件以及创建...

  • FTP自动上传文件

    在Linux中,有些时候为了简便,需要自动上传文件到FTP,本文教你如何在Linux下使用Shell脚本实现ftp...

  • Linux中使用rz和sz上传下载

    Linux操作系统上可以使用rz,sz命令进行文件的上传和下载,不用下载ftp工具,本文通过xshell工具登录服...

  • shell脚本实现FTP上传下载

    下载单个文件脚本代码 上传单个文件脚本代码 批量下载脚本代码 批量上传脚本代码 命令解释 登录FTP << 是使用...

  • linux使用xshell的rz、sz上传下载文件

    使用rz命令上传文件:在哪个目录使用该命令文件会上传哪个目录 使用sz从linux上下载文件到本地,自己选择文件存...

  • 2020-10-27

    使用Aspera命令行上传文件。 您可以通过Aspera命令行,使用以下的命令来上传文件: [path/to/as...

  • linux搭建ftp

    Centos7 命令使用总结 java完成ftp传输(将文件上传至静态资源服务器) ftp一些概念了解 Linux...

  • linux搭建ftp

    Centos7 命令使用总结 java完成ftp传输(将文件上传至静态资源服务器) ftp一些概念了解 Linux...

  • linux 文件上传下载工具 lrzsz

    lrzszlrzsz是一款在linux里可代替ftp上传和下载的程序。服务器需要安装该程序才能使用,使用如下命令安...

网友评论

    本文标题:如何在linux命令行中使用ftp命令上传和下载文件

    本文链接:https://www.haomeiwen.com/subject/jkiilctx.html