一、通过SecureCRT的rz、sz实现文件的上传和下载

1.检查是否安装sz  rz,命令如下

[root@localhost ~]# rpm -qa | grep rz   # 上传
[root@localhost ~]# rpm -qa | grep sz # 下载

2.安装lrzsz软件,命令如下

[root@localhost ~]# yum install -y lrzsz             # CentOS
[root@localhost ~]# apt-get install -y lrzsz # Ubuntu

3.文件上传

[root@localhost ~]# rz
[root@localhost ~]# rz -be
使用rz会有两个问题: 上传中断、上传文件变化(md5不同)。解决办法如下:
-b: 用binary的方式上传下载, 不解释字符为ASCII。
-e: 强制escape所有控制字符, 比如Ctrl+x, DEL等。

4.文件下载

# .下载一个文件
[root@localhost ~]# sz filename
[root@localhost ~]# sz requirements.txt

# .下载多个文件
[root@localhost ~]# sz filename1 filename2

# .下载dir目录下的所有文件,不包含dir下的文件夹
[root@localhost ~]# sz dir/*

二、通过sftp实现文件的上传和下载

  • 为了数据和服务的安全, 很多生产环境中的Linux服务器不能使用外网环境. 在只有SSH连接的情况下, 传输文件变得很不方便。
  • 如果Linux服务器未安装用于上传和下载的lrzsz软件, 又不能现场安装, 此时可考虑使用sftp完成相关操作。
  • FTP是一种方便数据共享的文件传输协议, 包括一个FTP服务器和多个FTP客户端. FTP客户端通过FTP协议从服务器上下载资源。
  • SFTP是Secure File Transfer Protocol(安全文件传输协议)的缩写, 可以为传输文件提供一种安全的网络的加密方法。
  • SFTP协议是在FTP的基础上, 对数据采取了加密/解密技术, 使数据传输更安全。
  • SFTP的传输效率比FTP的低很多。

Windows系统下, 可以使用Core FTP、FileZilla、WinSCP、Xftp等软件来连接SFTP进行上传/下载文件、建立/删除目录等操作。这里主要探讨Linux系统下的操作。

1.软件环境

可以使用任意终端工具, 比如xshell, 或SecureCRT。

2.sftp建立连接

[root@localhost ~]# sftp username@remote_ip(or remote host name),      # 连接root用户, 则可省略"root@".
[root@localhost ~]# sftp -o port= username@remote_ip
[root@localhost ~]# sftp root@68.56.32.159

3.sftp - 上传文件:如果上传/下载的是文件夹, 在put/get命令后加上-r参数即可。

上传文件:  把本地服务器的/www/wwwroot目录下面的study.log文件上传到远程服务器的/www/server目录下。
sftp> lcd /www/wwwroot
sftp> put study.log /www/server 上传文件夹:把本地服务器的/www/wwwroot目录下面的test文件夹上传到远程服务器的/www/server目录下。
sftp> put -r test /www/server 查看远程服务器/www/server目录下面的文件和文件夹
sftp> ls /www/server

4.sftp - 下载文件

下载文件:  把远程服务器的/www/server目录下面的study.log文件下载到本地服务器的/www目录下。
sftp> get /www/server/study.log /www

下载文件夹:把远程服务器的/www/server目录下面的test文件夹下载到本地服务器的/www目录下。
sftp> get -r /www/server/test /www 查看本地服务器/www目录下面的文件和文件夹
sftp> lls /www

5.sftp与ftp有着几乎相同的语法和功能

① ls, rm, cd, mkdir, pwd     等指令是对当前连接的远程端服务器的操作。
② lls, lrm, lcd, lmkdir, lpwd 等指令是对本地端服务器的操作 —— 在上述指令前加l(local)即可。

6.退出sftp

Linux—文件上传和下载的更多相关文章

  1. Linux文件上传工具下载工具及详细使用说明

    对于经常使用Linux系统的人员来说,少不了将本地的文件上传到服务器或者从服务器上下载文件到本地,rz / sz命令很方便的帮我们实现了这个功能,但是很多Linux系统初始并没有这两个命令.今天,我们 ...

  2. java使用Jsch实现远程操作linux服务器进行文件上传、下载,删除和显示目录信息

    1.java使用Jsch实现远程操作linux服务器进行文件上传.下载,删除和显示目录信息. 参考链接:https://www.cnblogs.com/longyg/archive/2012/06/2 ...

  3. Linux文件上传下载sz 和 rz 命令

    windows系统和linux系统之间文件上传和下载用到 rz 和 sz 命令.rz: 上传文件sz:下载文件 先检查是否安装rz,sz模块 安装rz,sz 模块yum search sz安装yum ...

  4. 常用Linux命令-文件上传和下载

    rz 上传本地文件到远程服务器 sz fileName 下载文件到本地电脑 如果不能使用以上命令进行文件上传和下载需要安装命令,步骤如下: 1.软件安装1)编译安装root 账号登陆后,依次执行以下命 ...

  5. 文件上传和下载(可批量上传)——Spring(三)

    在文件上传和下载(可批量上传)——Spring(二)的基础上,发现了文件下载时,只有在Chrome浏览器下文件名正常显示,还有发布到服务器后,不能上传到指定的文件夹目录,如上传20160310.txt ...

  6. 基于jsp的文件上传和下载

    参考: 一.JavaWeb学习总结(五十)--文件上传和下载 此文极好,不过有几点要注意: 1.直接按照作者的代码极有可能listfile.jsp文件中 <%@taglib prefix=&qu ...

  7. Nginx集群之WCF大文件上传及下载(支持6G传输)

    目录 1       大概思路... 1 2       Nginx集群之WCF大文件上传及下载... 1 3       BasicHttpBinding相关配置解析... 2 4       编写 ...

  8. 七牛云存储 qiniu 域名 回收 文件上传 备份 下载 MD

    Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...

  9. java的文件上传和下载 抄袭别人的.在底部有说明.

    =======后续 这里采用的是输出流的方式,我电脑装的是windows系统,测试没有问题,但是当把项目放到Linux系统上跑时,就会出现保存位置错误的情况, 指定的路径就会被当做文件名的一部分保存了 ...

随机推荐

  1. cgo在mac上编译

    用了cgo mac上编译不过的可以试试下面的方法 ../../pkg/mod/github.com/mattn/go-sqlite3@v1.:: fatal error: 'stdlib.h' fil ...

  2. Android Studio添加文件注释头模板集合

    Android Studio中设置方式 File -> Settings -> Editor -> File and Code Templates -> 右侧File标签 -& ...

  3. HTTP 简述

    HTTP 简介: 1.Hyper Text Transfer Protocol(超文本传输协议),主要用于 Web 浏览器和 Web 服务器之间的通信 2.它基于 TCP/IP 通信协议来传输数据 3 ...

  4. python连数据库制作音乐软件

    import pymysql conn = pymysql.connect(host="localhost",user="root",password=&quo ...

  5. Mysql—数据恢复

    根据.frm和.ibd文件恢复表结构和数据

  6. 201871010116-祁英红《面向对象程序设计(java)》第十周学习总结

    博文正文开头格式:(2分) 项目 内容 <面向对象程序设计(java)> https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在哪里 https://ww ...

  7. AcWing 30. 正则表达式匹配 (剑指OFFER leetcode 10)

    题目描述请实现一个函数用来匹配包括’.’和’*’的正则表达式. 模式中的字符’.’表示任意一个字符,而’*’表示它前面的字符可以出现任意次(含0次). 在本题中,匹配是指字符串的所有字符匹配整个模式. ...

  8. AD软件笔记

    问题1:不同网络的线可以重叠在一起         解决方法1: 在AD中,可以通过   SHIFT+R  快捷键     设置 三种布线模式(忽略 避开 或者 推挤) 解决方法2: 设置规则的Ele ...

  9. 给Java0基础的五个学习的思路?

    关于Java初学者来说,想学习Java教程,需求了解,根底打好才干学得更好,Java教程之学习Java的路线图的五个必经阶段,希望能对Java学习者有所帮忙. 第一个阶段-java根底阶段 1.jav ...

  10. Educational Codeforces Round 37 (Rated for Div. 2) E. Connected Components? 图论

    E. Connected Components? You are given an undirected graph consisting of n vertices and edges. Inste ...