Linux命令之sftp
本文链接:/blog/985744 (转载请注明出处)
用途说明
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命令。
/blog/418829
【2】心剑龙鹰 linux下SSH远程登录另一台LINUX,并且用sftp上传下载文件 /nxswxxg/blog/item/ec4674cc26e21d1801e92884.html
【3】Linuxeden Linux下sftp自动上传文件
/html/softuse/20100709/103727.html
很多用户还是经常在WINDOWS下完成日常工作的,但是同时在管理或测试LINUX系统的时候需要经常与远程LINUX服务器交换数据。一般情况下通过以下几种。
1、是通过NFS通过MOUNT来挂接远程WINDOWS共享的网络文件系统CFIS进行数据交换。
2、通过HTTP单方面交换数据。
3、通过FTP来交换数据。
4、通过SFTP使用SSH交换数据,这个功能利用了Secure CRT和SSH的功能来实现,非常简单也需要中转服务器。
A、当您安装好SSH服务器的时候就可以使用SFTP功能了。我的LINUX服务器上的SSH版本如下:
[root@mx1 ~]# rpm -qa |grep ssh
openssh-4.3p2-36.el5_4.4
openssh-clients-4.3p2-36.el5_4.4
openssh-server-4.3p2-36.el5_4.4
[root@mx1 ~]#
B、假设您在WINDOWS电脑上通过Secure CRT的SSH控制您的LINUX服务器正在需要一个文件需要从您的WINDOWS下发送到LINUX服务器上。
现在我们进入文件--连接SFTP标签
出现SFTP>提示符号。
::::::常用命令
lls 列出windows电脑上的本地目录的文件 lcd 进入WINDOWS的某个目录或驱动
put 上传Windows中的某个文件
get 下载Linux服务器上的某个文件到windows主机; 更详细的信息请输入
help
sftp> help
可用命令:
cd 路径 更改远程目录到“路径”
lcd 路径 更改本地目录到“路径”
chgrp group path 将文件“path”的组更改为“group” chmod mode path 将文件“path”的权限更改为“mode” chown owner path 将文件“path”的属主更改为“owner” exit 退出 sftp
help 显示这个帮助文本
get 远程路径 下载文件
ln existingpath linkpath 符号链接远程文件
ls [选项] [路径] 显示远程目录列表
lls [选项] [路径] 显示本地目录列表
mkdir 路径 创建远程目录
lmkdir 路径 创建本地目录
mv oldpath newpath 移动远程文件
open [用户@]主机[:端口] 连接到远程主机
put 本地路径 上传文件
pwd 显示远程工作目录
lpwd 打印本地工作目录
quit 退出 sftp
rmdir 路径 移除远程目录
lrmdir 路径 移除本地目录
rm 路径 删除远程文件
lrm 路径 删除本地文件
symlink existingpath linkpath 符号链接远程文件
version 显示协议版本
当然如果用Winscp也更方便
具体方法:
一、进行目录转换,将远程和本地的机器的目录转换为打算上传和下载文件的目录,命令为:
1、远程主机上:可以使用所有shell中的目录和文件操作命令:ls,pwd,cd等来对远程主机上的目录进行更改操作,不能使用vi等文件编辑工具
2、本地主机上:对本地目录进行操作需在以上命令前加上"l",
即:ls-》lls,pwd-》lpwd,cd-》lcd
二、进行文件传输
上传文件: put file 上传目录:put -r dir
下载文件: get file 下载目录:get -r dir
注:这里file可以使用*等通配符
sftp 是一个交互式文件传输程式。它类似于 ftp, 但它进行加密传输,比FTP有更高的安全性。下边就简单介绍一下如何远程连接主机,进行文件的上传和下载,以及一些相关操作。 如果远程主机到IP是172.26.30.222,或者域名是www.,用户名是hf,在命令行模式输入:sftp hf@www.
[root@huafang office]# sftp root@172.26.30.222
sftp> ls查看远程主机当前目录下到文件
sftp> pwd查看远程主机当前目录
Remote working directory: /root
sftp> cd /home/rpm在远程主机上转换目录路径
sftp> ls
sftp> lls只要是在本地主机上执行命令,前面都加上"l",L的小写字母
sftp> lpwd查看本地主机的当前目录
Local working directory: /home/rpm
sftp> lcd office本地主机上转换目录
sftp> lls
sftp> put ./EIOffice_Personal_Lin EIOffice_Personal_Lin.rar
将本地主机到当前目录下到EIOffice_Personal_Lin 上传到远程主机到当前目录
Uploading ./EIOffice_Personal_Lin.rar to /home/rpm/EIOffice_Personal_Lin.rar ./EIOffice_Personal_Lin.rar 100% 53MB 1.0MB/s 00:52 Fetching /home/rpm/EIOffice_Personal_Lin.rar to /tmp/EIOffice_Personal_Lin.rar
/home/rpm/EIOffice_Personal_Lin.rar 100% 53MB 990.1KB/s 00:55 sftp> get EIOffice_Personal_Lin.rar /tmp/ 将远程主机当前目录下到EIOffice_Personal_Lin.rar下载到本地主机到/tmp/目录下
Fetching /home/rpm/EIOffice_Personal_Lin.rar to /tmp/EIOffice_Personal_Lin.rar /home/rpm/EIOffice_Personal_Lin.rar 100% 53MB 990.1KB/s 00:55
[root@huafang rpm]# scp rar/rarlinux-3.9.1.tar.gz root@172.26.30.222:/home/rpm/将本地主机的rar安装包发送到远程主机的/home/rpm/目录下
root@172.26.30.222's password:
rarlinux-3.9.1.tar.gz 100% 812KB 812.4KB/s 00:00
同样的,我们也可以将远程主机到文件copy到我们自己到主机上,当然你得知道ta到密码哈!!!
ProgramSupportedbyWaltonInternationalHongKongBusinessPlanAugust2020xxIhereb…
MybusinessplanEverygraduatefacesaquestionwhenhestartshiscareerWanttobeasmal…
BusinessplanvorlageWRMGmbHImFolgendenfindenSieeineformatierteWordvorlagefrI…
BusinessPlan商业计划书一现有客户资源情况个人客户情况1为示例公司客户情况1为示例二潜在客户情况三如果加入XX公司请大致…
综合英语MyBusinessPlanMybusinessplanistostartaKTVanditsnamewillbecall…
1FTP架构如同其他的很多通讯协议FTP通讯协议也采用客户机服务器ClientServer架构用户可以通过各种不同的FTP客户端程…
FTPSFTPFTPS总结FTP应用分FTPSFTPFTPS其中最常见的是FTP也是下面将重点讨论的情形SFTP即SecureFi…
最近使用SecureFx涉及了两个不同的安全文件传输协议sftpftpoverSSH2这两种协议是不同的sftp是ssh内含的协议…
Sftp和ftpoverssh2的区别最近使用SecureFx涉及了两个不同的安全文件传输协议sftpftpoverSSH2这两种…
Windows下用sftp打造安全传输众所周知在Windows系统和Linux类系统的最大区别就在于他的非开源性因此在Window…