putty是一个开源软件,目前为止最新版本为0.70。对于文件或文件夹的上传下载,在Windows下它提供了pscp和psftp两个命令。

(1).pscp

  pscp在命令提示符中使用,只要putty(ssh)能够远程,就能使用该命令。

  1. pscp [Windows上的路径,可绝对可相对] [Linux用户]@[LinuxIP地址或网络内唯一主机名]:[Linux上存放地址,绝对路径]
  2. pscp [Linux用户]@[LinuxIP地址或网络内唯一主机名]:[Linux上存放地址,绝对路径] [Windows上的路径,可绝对可相对]

  Windows路径在前,是Windows向Linux上传文件。Linux路径在前,则是Windows向Linux请求下载文件。

  另外pscp后面还可以跟随选项,这里只介绍6个常用选项

  1. -p 拷贝文件的时候保留源文件建立的时间。
  2. -q 执行文件拷贝时,不显示任何提示消息。
  3. -r 拷贝整个目录
  4. -v 拷贝文件时,显示提示信息。
    -sftp 强制使用sftp协议
    -scp 强制使用scp协议

  下面做一个实例,使用pscp拷贝一个文件夹

  1. C:\Users\xuefei>pscp -r root@192.168.0.11:/root/extundelete-0.2.4 Desktop\
  2. root@192.168.0.11's password:
  3. config.h | 5 kB | 5.0 kB/s | ETA: 00:00:00 | 100%
  4. LICENSE | 17 kB | 17.6 kB/s | ETA: 00:00:00 | 100%
  5. configure | 226 kB | 226.1 kB/s | ETA: 00:00:00 | 100%
  6. missing | 10 kB | 10.1 kB/s | ETA: 00:00:00 | 100%
  7. extundelete-extundelete.o | 1600 kB | 1600.2 kB/s | ETA: 00:00:00 | 100%

  跑完之后我的桌面就会多出一个名为extundelete-0.2.4的文件夹。但是,由于Linux与Windows编码问题,如果出现汉字名称或文件内容有汉字,那将会非常糟糕。

  如果是Windows上传虽然会有乱码,但还可以通过convmv和iconv处理(详见:从Windows复制文件到Linux显示乱码问题

  如果Windows下载的文件名有乱码,会发现找不到这个文件或文件夹(至少我不知道怎么做)。

(2).psftp

  psftp也可以在命令提示符中使用,不过putty也给出了一个接口图标直接打开使用。

  这是就有使用时的三种情况:

  第一种、在命令提示符中,使用psftp [Linux用户]@[Linux的IP地址或网络内唯一主机名]转到psftp模式下(此时已经连接Linux)。另外此时Windows默认上传下载地址为转入psftp模式前所在的地址,例如C:\Users\xuefei>psftp root@192.168.0.11,它的默认下载地址就是C:\Users\xuefei。

  第二种、在命令提示符中,使用psftp转到psftp模式下(此时没有连接Linux)。想要连接到Linux服务器就必须在psftp模式下执行open [Linux用户]@[Linux的IP地址或网络内唯一主机名]。另外和第一种一样,此时Windows默认上传下载地址为转入psftp模式前所在的地址。

  第三种、使用putty提供的接口图标PSFTP直接打开,会直接转到psftp模式下(此时没有连接到Linux)。和第二种一样,想要连接到Linux服务器就必须在psftp模式下执行open [Linux用户]@[Linux的IP地址或网络内唯一主机名]。默认的下载地址是软件安装目录。

  注意:如果不是以超级管理员权限打开命令提示符或接口图标PSFTP,那么系统盘下部分文件是不允许上传,并且部分地址不允许存放下载文件。

  下面说一下psftp的几个常用选项

  1. put 上传文件,目录需要加-r
  2. get 下载文件,目录需要加-r
  3. mput 上传多个文件
  4. mget 下载多个文件
  5. cd 服务器端移动路径
  6. pwd 显示服务器端当前所在路径
  7. lcd 本地端移动路径
  8. lpwd 显示本地端当前所在路径

  下面做一个实例,上传一个目录

  1. C:\Users\xuefei>psftp root@192.168.0.11
  2. Using username "root".
  3. root@192.168.0.11's password:
  4. Remote working directory is /root
  5. psftp> lcd Desktop\    //调整本地端路径
  6. New local directory is C:\Users\xuefei\Desktop
  7. psftp> put extundelete-0.2.4    //可以看到但有put是不行的
  8. local: unable to open extundelete-0.2.4
  9. psftp> mput extundelete-0.2.4    //mput一样不行
  10. local: unable to open extundelete-0.2.4
  11. psftp> put -r extundelete-0.2.4    //只有put -r才可以上传目录

  再做一个实例,下载多个文件

  1. psftp> mget 1 install.log install.log.syslog
  2. remote:/root/1 => local:1
  3. remote:/root/install.log => local:install.log
  4. remote:/root/install.log.syslog => local:install.log.syslog

  上传下载单个文件或文件夹还可以重命名

  1. psftp> get -r extundelete-0.2.4 1  //下载单个文件夹,重命名为1
  2. remote:/root/extundelete-0.2.4/LICENSE => local:1\LICENSE
  3. remote:/root/extundelete-0.2.4/Makefile => local:1\Makefile
  4. remote:/root/extundelete-0.2.4/Makefile.am => local:1\Makefile.am
  5. psftp> get 1 2    //单个文件,重命名2
  6. remote:/root/1 => local:2

  上传下载单个文件或文件夹还可以给出绝对路径,保存到指定地址

  1. psftp> get 1 D:\1    //一定要有重命名,不然无法指定地址
  2. remote:/root/1 => local:D:\1

  和上面的pscp一样,汉字问题依然存在。而且问题一模一样。

putty对Linux上传下载文件或文件夹的更多相关文章

  1. SecureCRT、Xmanager对Linux上传下载文件或文件夹

    (1).SecureCRT SecureCRT对Linux上传下载文件或文件夹拥有一个专门的软件SecureFXPortable.对于它来说只有两个的难题,一个是版本问题,尽量去官网下载最近版本:另一 ...

  2. Python 一键上传下载&一键提交文件到SVN入基线工具

    一键上传下载&一键提交文件到SVN入基线工具   by:授客 QQ:1033553122 实现功能 1 测试环境 1 使用说明 1   注: 根据我司项目规则订制的一套工具,集成以下功能,源码 ...

  3. Android连接socket服务器上传下载多个文件

    android连接socket服务器上传下载多个文件1.socket服务端SocketServer.java public class SocketServer { ;// 端口号,必须与客户端一致 ...

  4. 通过xshell/securecrt连接linux上传/下载文件

    通过ssh等客户端连接远程linux总会有上传下载的需求,这里分别用Ubuntu和centos展示安装lrzsz软件的命令,使用命令是一致的,这里简单写 1.安装: centos:(注:参数-y中的意 ...

  5. linux上传下载文件rz,sz

    [一般用于SecureCRT ssh中使用] █ 法一:直接用yum安装lrzsz(推荐) yum install lrzsz -y 注意:rhel安装完系统后 直接可使用 rz sz █ 法二:源文 ...

  6. Linux上传下载神器之 lrzsz

    在开发的过程中,经常遇到 需要在 Linux 和 Windows 之间上传下载文件的情况 这时,一般都是使用 FTP 或者 WinSCP 工具进行上传下载, 虽然也能解决问题,但是这些工具需要在本地安 ...

  7. linux上传下载

    linux传下载 1.可以通过xftp连接服务器直接 拖拽 2.yum install lrzsz   通过rz/sz命令上传下载

  8. Linux上传下载文件快捷命令

    远程链接Linux(如SecrueCRT),要上传文件很下载文件到Linux服务器,只需要使用sz或者rz命令即可快速下载和上传文件了. 使用方法: 1.首先确保Linux服务器系统中安装了lrzsz ...

  9. linux 上传/下载文件到windows工具

    一般来说,linux服务器大多是通过ssh客户端来进行远程的登陆和管理的,使用ssh登陆linux主机以后,如何能够快速的和本地机器进行文件的交互呢,也就是上传和下载文件到服务器和本地:   与ssh ...

随机推荐

  1. c# socket select 模型代码(u3d)

    其实写过多次网络链接.但是因为换了工作,又没电脑在身边,所以以前的代码都没办法翻出来用. 所以从今天起,一些常用的代码只好放到网上. 公司有一个局域网的游戏.本来想用u3d的rpc就可以完成.但是后来 ...

  2. [cerc2012][Gym100624A]20181013

    A 题意:n(n<=20)个国家,每个国家之间有一些债务关系,总体为负债的国家会破产,破产国家的债务关系全部消除.问哪些国家可能成为最后一个唯一存在的国家. 题解: 对于每一个状态,面对若干个负 ...

  3. 【BZOJ1560】【JSOI2009】火星藏宝图 [DP]

    火星藏宝图 Time Limit: 10 Sec  Memory Limit: 64 MB[Submit][Status][Discuss] Description Input Output Samp ...

  4. JS的prototype和__proto__

    一.prototype和__proto__的概念 prototype是函数的一个属性(每个函数都有一 个prototype属性),这个属性是一个指针,指向一个对象.它 是显示修改对象的原型的属性. _ ...

  5. js jq插件 显示中文时间戳 刚刚 N分钟前 N小时前 今天 上午 下午 日期格式化

    注:页面需提前引用JQ ; $.fn.extend({ /* ** notes: 获取13位时间戳的简单操作 ** new Date('2018-02-01 15:10:00').getTime() ...

  6. hdu 2717 Catch That Cow(广搜bfs)

    题目链接:http://i.cnblogs.com/EditPosts.aspx?opt=1 Catch That Cow Time Limit: 5000/2000 MS (Java/Others) ...

  7. 【Python学习笔记】Coursera课程《Using Python to Access Web Data 》 密歇根大学 Charles Severance——Week2 Regular Expressions课堂笔记

    Coursera课程<Using Python to Access Web Data > 密歇根大学 Charles Severance Week2 Regular Expressions ...

  8. Caffe学习笔记3

    Caffe学习笔记3 本文为原创作品,未经本人同意,禁止转载,禁止用于商业用途!本人对博客使用拥有最终解释权 欢迎关注我的博客:http://blog.csdn.net/hit2015spring和h ...

  9. bind类成员函数

    首先描述一个情景: 先贴出代码: class Solution { public: bool compare(int a, int b) { return a > b; } int functi ...

  10. Linux网络编程之套接字基础

    1.套接字的基本结构 struct sockaddr 这个结构用来存储套接字地址. 数据定义: struct sockaddr { unsigned short sa_family; /* addre ...