随笔 - 196  文章 - 0  评论 - 9  阅读 - 63万

Linux命令之sftp - 安全文件传输命令行工具

用途说明

sftp命令可以通过ssh来上传和下载文件,是常用的文件传输工具,它的使用方式与ftp类似,但它使用ssh作为底层传输协议,所以安全性比ftp要好得多。

 

常用方式

格式:sftp <host>

通过sftp连接<host>,端口为默认的22,用户为Linux当前登录用户。

 

格式:sftp -oPort=<port> <host>

通过sftp连接<host>,指定端口<port>,用户为Linux当前登录用户。

 

格式:sftp <user>@<host>

通过sftp连接<host>,端口为默认的22,指定用户<user>。

 

格式:sftp -oPort=<port> <user>@<host>

通过sftp连接<host>,端口为<port>,用户为<user>。

 

sftp连接成功之后常用操作命令如下:

help/? 打印帮助信息。

pwd   查看远程服务器当前目录;

lpwd  查看本地系统的当前目录。

cd <dir>   将远程服务器的当前目录更改为<dir>;

lcd <dir>  将本地系统的当前目录更改为<dir>。

ls 显示远程服务器上当前目录的文件名;

ls -l  显示远程服务器上当前目录的文件详细列表;

ls <pattern> 显示远程服务器上符合指定模式<pattern>的文件名;

ls -l <pattern>  显示远程服务器上符合指定模式<pattern>的文件详细列表。

lls 显示本地系统上当前目录的文件名;

lls的其他参数与ls命令的类似。

get <file> 下载指定文件<file>;

get <pattern> 下载符合指定模式<pattern>的文件。

put <file> 上传指定文件<file>;

get <pattern> 上传符合指定模式<pattern>的文件。

progress 切换是否显示文件传输进度。

mkdir <dir> 在远程服务器上创建目录;

lmkdir <dir> 在本地系统上创建目录。

exit/quit/bye 退出sftp。

! 启动一个本地shell。

! <commandline> 执行本地命令行。

其他命令还有:chgrp, chmod, chown, ln, lumask, rename, rm, rmdir, symlink, version。

 

使用示例

示例一

[root@jfht ~]# stty erase ^H
[root@jfht ~]# sftp 192.168.1.181
Connecting to 192.168.1.181...
root@192.168.1.181's password:
sftp> ls -l *.gz
-rw-r--r--    0 0        0         7770116 May 14  2010 mini.tar.gz
sftp> lls *.gz
cn.tar.gz  ct08.min.tar.gz  files.20101216a.tar.gz
sftp> get mini.tar.get
Couldn't stat remote file: No such file or directory
File "/root/mini.tar.get" not found.
sftp> ^[[A
Invalid command.
sftp> get mini.tar.gz
Fetching /root/mini.tar.gz to mini.tar.gz
/root/mini.tar.gz                                                                                 100% 7588KB   7.4MB/s   00:01   
sftp>
lls mini.tar.gz -l

-rw-r--r-- 1 root root 7770116 04-03 15:20 mini.tar.gz
sftp> quit
[root@jfht ~]#

 

问题思考

1. 在 sftp 登入之后的命令行中,如果按 Backspace 将会出现怪字符 ^H, 怎样才能使 Backspace 产生它应有的作用?(2012.06.11)

 

2. 怎样才能做到 sftp 免登录?这样做之后,一是可以免去输入密码的麻烦,二是可以在脚本中使用了。(2012.06.11)

 

3. 怎样用 sftp 来调用一系列已经编写好的命令,比如先进入某个目录,然后下载其下的文件,然后退出。(2012.06.11)

 

相关资料

【1】gloryme linux下如何使用sftp命令。
http://gloryme.iteye.com/blog/418829
【2】心剑龙鹰 linux下SSH远程登录另一台LINUX,并且用sftp上传下载文件
http://hi.baidu.com/nxswxxg/blog/item/ec4674cc26e21d1801e92884.html
【3】Linuxeden Linux下sftp自动上传文件
http://www.linuxeden.com/html/softuse/20100709/103727.html

posted on   周德顺  阅读(983)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
< 2013年3月 >
24 25 26 27 28 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 1 2 3 4 5 6

点击右上角即可分享
微信分享提示