美文网首页生信笔记服务器
如何在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 #关闭
    

    相关文章

      网友评论

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

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