sftp

1.功能作用

sftp 是一个交互式文件传输程式。它类似于 ftp, 但它进行加密传输,比FTP有更高的安全性。

2.位置

/usr/bin/sftp

3.格式用法

sftp [-1246Cpqrv] [-B buffer_size] [-b batchfile] [-c cipher]
[-D sftp_server_path] [-F ssh_config] [-i identity_file] [-l limit]
[-o ssh_option] [-P port] [-R num_requests] [-S program]
[-s subsystem | sftp_server] host
sftp [user@]host[:file ...]
sftp [user@]host[:dir[/]]
sftp -b batchfile [user@]host

4.主要参数

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
     -1      强制sftp用协议1.
     -2      强制sftp用协议2
     -4      强制sftp用IPV4的网址
     -6      强制sftp用IPV6的网址
     -B   buffer_size
             指定缓冲区的大小。
     -b  batchfile
             选择批处理模式(防止输入密码)
     -C      允许压缩。标注-C到ssh(1)来允许压缩
     -c  cipher
             选择cipher来加密数据传输。这个选项直接传递到ssh(1)
     -D  sftp_server_path
             直接连接到本地SFTP服务器(而不是通过ssh(1))。此选项可能有用的调试客户端和服务器。
     -F  ssh_config
             设定一个可变动的用户配置给ssh.这个选项直接会被传递到ssh(1)
     -i  identity_file
             选择被RSA认证读取私有密码的文件。这个选项可以直接被传递到ssh(1)
     -l  limit
             限制传输带宽,也就是速度用Kbit/s的速度
     -o  ssh_option
             可以把ssh_config中的配置格式传到ssh中。这种模式对于说明没有独立的scp文件中断符的scp很有帮助。
             关于选项的如下。而他们的值请参看ssh_config(5)
     -P  port
             指定连接远程连接端口。注意这个选项需要写成大写的模式。因为-p已经早保留了次数和模式
     -p      指定修改次数,连接次数,还有对于原文件的模式
     -q      把进度参数关掉
     -R  num_requests
             指定多少个请求能在同一时间处理。增加这可能会略有提高文件传输速度,但会增加内存使用。默认是64个未完成的请求。
     -r      递归的复制整个文件夹
     -S  program
             指定一个加密程序。这个程序必须可读所有ssh(1)的选项。
     -s  subsystem|sftp_server
             指定hSpecifies SSH2的子系统或SFTP远程服务器的路径            
     -v      冗余模式。
 
交互命令
     bye     退出sftp.
     cd  path
             更改到远程目录的路径.
     chgrp  grp path
             将文件path的组更改为group
     chmod  mode path
             将文件path的权限更改为mode
     chown  own path
             将文件path的属主更改为owner
     df  [-hi]  [path]
              使用当前文件系统的信息显示目录
              如果指定-h标志,容量的信息将使用更易读的方式显示
             -i标志显示inode信息,
     exit    退出sftp.
     get  [-Ppr]  remote-path  [local-path]
             下载文件
             如果指定-Por-p标识,则复制权限和操作时间.
             如果指定-r标识,那么目录将被复制递归。            
     help    显示帮助信息.
     lcd path
             更改到本地目录的路径
     lls  [ls-options  [path]]
             显示本地目录列表
     lmkdir path
             创建本地目录.
     ln  [-s]  oldpath newpath
             符号链接远程文件
     lpwd    打印本地工作目录
     ls  [-1afhlnrSt]  [path]
             显示远程目录列表
             -1      每行只列出一个文件
             -a      不隐藏任何以.开始的项目
             -f      不进行排序,-aU选项生效,-lst选项失效.
             -h      与-l一起,以易于阅读的格式输出文件大小
             -l      使用较长格式列出信息.
             -n      类似-l,但列出UID及GID号.
             -r      R逆序排列.
             -S      根据文件大小排序.
             -t      根据修改时间排序.
     lumask umask
             设置本地的umask设置。
      mkdirpath
             创建远程目录
     progress
             切换显示进度表。
     put  [-Ppr]  local-path  [remote-path]
             上传本地路径,并存储在远程机器上
             如果指定-Por-p标识,则复制权限和操作时间.
             如果指定-r标识,那么目录将被复制递归。
     pwd     显示远程工作目录
     quit    退出sftp
     rename   oldpath   newpath
             更改远程文件名
     rmpath
             删除远程文件
     rmdirpath
             移除远程目录
     symlink oldpath newpath
             符号链接远程文件
     version
             显示协议版本
     !command
             在本地shell执行命令
     !       返回到本地shell.
     ?       显示帮助.

5.应用实例

1、连接远程主机
sftp fyt@202.206.64.33
sftp -P22 fyt@202.206.64.33   #指定端口连接

2、从远程主机下载文件
sftp> get /var/www/fuyatao/index.php /home/fuyatao/

3、上传文件到远程主机
sftp> put /home/fuyatao/downloads/Linuxgl.pdf /var/www/fuyatao/

4、从这个应用程序中退出
sftp> quit
sftp> bye
sftp> exit

5、改变当前的远程工作目录
sftp> cd directory

6、改变当前的本地工作目录
sftp> lcd directory

unix FTP命令
  FTP的命令行格式为:ftp -v -d -i -n -g [主机名],其中

  -v显示远程服务器的所有响应信息;

  -n限制ftp的自动登录,即不使用;

  .n etrc文件;

  -d使用调试方式;

  -g取消全局文件名。

  ftp使用的内部命令如下(中括号表示可选项):

  1.![cmd[args]]:在本地机中执行交互shell,exit回到ftp环境,如:!ls*.zip.

  2.$ macro-ame[args]:执行宏定义macro-name.

  3.account[password]:提供登录远程系统成功后访问系统资源所需的补充口令。

  4.append local-file[remote-file]:将本地文件追加到远程系统主机,若未指定远程系统文件名,则使用本地文件名。

  5.ascii:使用ascii类型传输方式。

  6.bell:每个命令执行完毕后计算机响铃一次。

  7.bin:使用二进制文件传输方式。

  8.bye:退出ftp会话过程。

  9.case:在使用mget时,将远程主机文件名中的大写转为小写字母。

  10.cd remote-dir:进入远程主机目录。

  11.cdup:进入远程主机目录的父目录。

  12.chmod mode file-name:将远程主机文件file-name的存取方式设置为mode,如:chmod 777 a.out。

  13.close:中断与远程服务器的ftp会话(与open对应)。

  14.cr:使用asscii方式传输文件时,将回车换行转换为回行。

  15.delete remote-file:删除远程主机文件。

  16.debug[debug-value]:设置调试方式,显示发送至远程主机的每条命令,如:deb up 3,若设为0,表示取消debug。

  17.dir[remote-dir][local-file]:显示远程主机目录,并将结果存入本地文件local-file。

  18.disconnection:同close。

  19.form format:将文件传输方式设置为format,缺省为file方式。

  20.get remote-file[local-file]:将远程主机的文件remote-file传至本地硬盘的local-file。

  21.glob:设置mdelete,mget,mput的文件名扩展,缺省时不扩展文件名,同命令行的-g参数。

  22.hash:每传输1024字节,显示一个hash符号(#)。

  23.help[cmd]:显示ftp内部命令cmd的帮助信息,如:help get。

  24.idle[seconds]:将远程服务器的休眠计时器设为[seconds]秒。

  25.image:设置二进制传输方式(同binary)。

  26.lcd[dir]:将本地工作目录切换至dir。

  27.ls[remote-dir][local-file]:显示远程目录remote-dir,并存入本地文件local-file。

  28.macdef macro-name:定义一个宏,遇到macdef下的空行时,宏定义结束。

  29.mdelete[remote-file]:删除远程主机文件。

  30.mdir remote-files local-file:与dir类似,但可指定多个远程文件,如:mdir *.o.*.zipoutfile

  31.mget remote-files:传输多个远程文件。

  32.mkdir dir-name:在远程主机中建一目录。

  33.mls remote-file local-file:同nlist,但可指定多个文件名。

  34.mode[modename]:将文件传输方式设置为modename,缺省为stream方式。

  35.modtime file-name:显示远程主机文件的最后修改时间。

  36.mput local-file:将多个文件传输至远程主机。

  37.newer file-name:如果远程机中file-name的修改时间比本地硬盘同名文件的时间更近,则重传该文件。

  38.nlist[remote-dir][local-file]:显示远程主机目录的文件清单,并存入本地硬盘的local-file。

  39.nmap[inpattern outpattern]:设置文件名映射机制,使得文件传输时,文件中的某些字符相互转换,如:nmap $1.$2.$3[$1,$2].[$2,$3],则传输文件a1.a2.a3时,文件名变为a1,a2。该命令特别适用于远程主机为非UNIX机的情况。

  40.ntrans[inchars[outchars]]:设置文件名字符的翻译机制,如ntrans 1R,则文件名LLL将变为RRR。

  41.open host[port]:建立指定ftp服务器连接,可指定连接端口。

  42.passive:进入被动传输方式。

  43.prompt:设置多个文件传输时的交互提示。

  44.proxy ftp-cmd:在次要控制连接中,执行一条ftp命令,该命令允许连接两个ftp服务器,以在两个服务器间传输文件。第一条ftp命令必须为open,以首先建立两个服务器间的连接。

  45.put local-file[remote-file]:将本地文件local-file传送至远程主机。

  46.pwd:显示远程主机的当前工作目录。

  47.quit:同bye,退出ftp会话。

  48.quote arg1,arg2...:将参数逐字发至远程ftp服务器,如:quote syst.

  49.recv remote-file[local-file]:同get。

  50.reget remote-file[local-file]:类似于get,但若local-file存在,则从上次传输中断处续传。

  51.rhelp[cmd-name]:请求获得远程主机的帮助。

  52.rstatus[file-name]:若未指定文件名,则显示远程主机的状态,否则显示文件状态。

  53.rename[from][to]:更改远程主机文件名。

  54.reset:清除回答队列。

  55.restart marker:从指定的标志marker处,重新开始get或put,如:restart 130。

  56.rmdir dir-name:删除远程主机目录。

  57.runique:设置文件名唯一性存储,若文件存在,则在原文件后加后缀..1,.2等。

  58.send local-file[remote-file]:同put。

  59.sendport:设置PORT命令的使用。

  60.site arg1,arg2...:将参数作为SITE命令逐字发送至远程ftp主机。

  61.size file-name:显示远程主机文件大小,如:site idle 7200。

  62.status:显示当前ftp状态。

  63.struct[struct-name]:将文件传输结构设置为struct-name,缺省时使用stream结构。

  64.sunique:将远程主机文件名存储设置为唯一(与runique对应)。

  65.system:显示远程主机的操作系统类型。

  66.tenex:将文件传输类型设置为TENEX机的所需的类型。

  67.tick:设置传输时的字节计数器。

  68.trace:设置包跟踪。

  69.type[type-name]:设置文件传输类型为type-name,缺省为ascii,如:type binary,设置二进制传输方式。

  70.umask[newmask]:将远程服务器的缺省umask设置为newmask,如:umask 3。

  71.user user-name[password][account]:向远程主机表明自己的身份,需要口令时,必须输入口令,如:user anonymous my@email。

  72.verbose:同命令行的-v参数,即设置详尽报告方式,ftp服务器的所有响应都将显示给用户,缺省为on.

  73.?[cmd]:同help。

linux sftp and unix ftp的更多相关文章

  1. Linux 终端訪问 FTP 及 上传下载 文件

    今天同事问我一个问题,在Linux 下訪问FTP,并将文件上传上去. 我之前一直是用WinSCP工具的. 先将文件从linux copy到windows下,然后在传到ftp上. google 一下. ...

  2. Linux下常用的ftp操作命令

    Linux下常用的ftp操作命令 =========== 完美的分割线 ============= 1.登陆ftp服务器 ftp [IP] [PORT] # 登陆ftp服务器,本机登陆可以不写IP 实 ...

  3. 在Linux中搭建一个FTP服务器

    在Linux中搭建一个ftp服务器,以供两个工作小组保管文件使用.禁用匿名.第一个小组使用ftp账号:ftp1,工作目录在:/var/ftp/ftp1:第二个小组使用ftp2,工作目录在:/var/f ...

  4. [转]Linux Ubuntu上架设FTP

    Linux Ubuntu上架设FTP http://www.blogjava.net/stonestyle/articles/369104.html 操作系统:ubuntu (GNU/Linux) 为 ...

  5. 在linux中限制用户ftp访问权限

    1.环境:redhat linux企业版4.ftp为vsftp.被限制用户名为aaa.被限制路径为/bbb.2.建用户:在root用户下,相继进行如下操作       adduser aaa      ...

  6. 【Linux基础】Unix与Linux操作系统介绍

    一.Unix和Linux操作系统概述 1.Unix是什么 UNIX是一个计算机操作系统,一个用来协调.管理和控制计算机硬件和软件资源的控制程序. 2.Unix特点 (1)多用户:在同一时刻可以有多个用 ...

  7. Linux中搭建一个ftp服务器详解

    来源:Linux社区  作者:luzhi1024 详解Linux中搭建一个ftp服务器. ftp工作是会启动两个通道:控制通道 , 数据通道在ftp协议中,控制连接均是由客户端发起的,而数据连接有两种 ...

  8. 腾讯云服务器linux Ubuntu操作系统搭建ftp服务器vsftpd

    腾讯云服务器linux Ubuntu操作系统安装ftp服务器vsftpd 操作系统: Ubuntu Server 16.04.1 LTS 64位 下面我将系统重装, 一步一步从头开始,安装FTP服务器 ...

  9. LINUX的SSH下FTP到远程服务器Entering Passive Mode失败解决

    LINUX 系统FTP连接远程服务器经常出现在传输文件或者发出 ls命令时候出现 "Entering Passive Mode "然后就再也无法运作了.该工作主要是因为LINUX的 ...

随机推荐

  1. [洛谷P2921][USACO08DEC]在农场万圣节Trick or Treat on the Farm

    题目大意:给你一张有向图,每个点最多一条出边,问从每个开始,走多少步会到一个已经过的点 题解:$tarjan$缩点,然后建反图$DP$ 卡点:无 C++ Code: #include <cstd ...

  2. bzoj 1877: [SDOI2009]晨跑 (网络流)

    明显拆点费用流: type arr=record toward,next,cap,cost:longint; end; const mm=<<; maxn=; maxm=; var edg ...

  3. BZOJ3238:[AHOI2013]差异——题解

    https://www.lydsy.com/JudgeOnline/problem.php?id=3238 https://www.luogu.org/problemnew/show/P4248 参考 ...

  4. UVA.10474 Where is the Marble ( 排序 二分查找 )

    UVA.10474 Where is the Marble ( 排序 二分查找 ) 题意分析 大水题一道.排序好找到第一个目标数字的位置,返回其下标即可.暴力可过,强行写了一发BS,发现错误百出.应了 ...

  5. java正则 以什么开始,以什么结束

    public class RegTest { public static void main(String[] args){ String regex = "\\[([\\s\\S]*?)\ ...

  6. Debug模式下加载文件,运行程序异常的慢

    今天在进行单元测试的时候,debug模式下加载速度很慢,但是run模式下速度很快. 原因:在debug模式下,断点位置不当,解决办法 移除编译器中的所有断点.

  7. python 面试题(1)

    好用简洁的大数据技术:python.hadoop.R 慢慢学习,随时分享 1.什么是Python?使用Python有什么好处? Python是一种编程语言,它有对象.模块.线程.异常处理和自动内存管理 ...

  8. POJ 3087 Shuffle'm Up DFS

    link:http://poj.org/problem?id=3087 题意:给你两串字串(必定偶数长),按照扑克牌那样的洗法(每次从S2堆底中拿第一张,再从S1堆底拿一张放在上面),洗好后的一堆可以 ...

  9. 优雅退出telnet

    echo "" |telnet IP 端口

  10. 【Foreign】Uria [欧拉函数]

    Uria Time Limit: 20 Sec  Memory Limit: 512 MB Description 从前有个正整数 n. 对于一个正整数对 (a,b),如果满足 a + b ≤ n 且 ...