Linux命令学习(5)-sftp,scp,rz,sz

sftp, scp: 摘自《鸟哥的Linux私房菜》第十一章、远程联机服务器SSH / XDMCP / VNC / RDP


  • sftp###

命令行模式的安全文件传输协议。通过ssh的通道进行传输的,默认端口为22

常用选项:

-o : 回话配置(session-config), 可以用man查看详细介绍。
     我主要是用来配置远程连接的端口号,因为我的主机的远程端口号不是默认的22.
     sftp -oPort=333 [email protected]

sftp模式下常用的命令:

Linux命令学习(5)-sftp,scp,rz,sz_第1张图片
sftp_cmd.png

  • scp###

知道远程目录文件的情况下可使用该命令进行下载/上传

[root@www ~]# scp [-pr] [-l 速率] file [账号@]主机:目录名 <==上传
[root@www ~]# scp [-pr] [-l 速率] [账号@]主机:file 目录名 <==下载
选项与参数:
-p :保留原本档案的权限数据;
-r :复制来源为目录时,可以复制整个目录 (含子目录)
-l :可以限制传输的速度,单位为 Kbits/s ,例如 [-l 800] 代表传输速限 100Kbytes/s

-P : 指定远程端口

# 1. 将当前目录下的t目录上传到远程用户的home目录下
[root@localhost workspace]# scp -r -P 269 ./t [email protected]:~/
reverse mapping checking getaddrinfo for croot [45.62.112.95] failed - POSSIBLE BREAK-IN ATTEMPT!
[email protected]'s password: 
Blob.cpp                                      100%  359     0.4KB/s   00:00    
c.txt                                         100%   13     0.0KB/s   00:00  

# 2.将远程home目录下载到本机
[root@localhost workspace]# ls
cpp  c.txt  t
[root@localhost workspace]# scp -r -P 269 [email protected]:~/ ./
ssh: Could not resolve hostname pzyyll.cc: Temporary failure in name resolution
[root@localhost workspace]# scp -r -P 269 [email protected]:~/ ./
reverse mapping checking getaddrinfo for croot [45.62.112.95] failed - POSSIBLE BREAK-IN ATTEMPT!
[email protected]'s password: 
.bash_logout                                  100%   18     0.0KB/s   00:01    
.bash_history                                 100% 1197     1.2KB/s   00:00    
.viminfo                                      100% 4982     4.9KB/s   00:00    
c.txt                                         100%   13     0.0KB/s   00:00    
Blob.cpp                                      100%  359     0.4KB/s   00:01    
.bash_profile                                 100%  176     0.2KB/s   00:00    
.bashrc                                       100%  124     0.1KB/s   00:00    
[root@localhost workspace]# ls
cpp  c.txt  scu  t

  • sz, rz###

这两个命令主要是用来Linux/Unix与Windows图形的上传与下载。需要连接客户端支持Zmodem(secureCRT等)。

一般Linux是不自带的,需要自己安装。在Centos下比较简单。直接yum就可以了

yum install lrzsz*

rz: 接受文件(从Windows上传文件到Linux)
常用参数:
-b: 二进制方式传输文件
-y: overwrite, 覆盖写入

sz: 发送文件(从Linux上下载文件到Windows)

执行rz命令时会弹出资源选择窗口(以SecureCRT为例):

Linux命令学习(5)-sftp,scp,rz,sz_第2张图片
rz.png

执行sz命令时会将文件下载到默认的下载录下(Windows):

[root@croot t]# ls
Blob.cpp  c.txt
[root@croot t]# sz -b c.txt
rz
Starting zmodem transfer.  Press Ctrl+C to cancel.
Transferring c.txt...
  100%      13 bytes   13 bytes/sec 00:00:01       0 Errors  

关于SecureCRT中上传与下载的目录可以在session options中设置:

Options->Session Options

Linux命令学习(5)-sftp,scp,rz,sz_第3张图片
sz .png

你可能感兴趣的:(Linux命令学习(5)-sftp,scp,rz,sz)