在SecureCRT中,创建一个当前会话对应的sftp会话:
sftp> cd /root/jason/tool
sftp> lpwd //显示本地的操作路径
d:/zhaluo/My Documents
sftp> get TeamViewer_Setup_zhcn.exe
Downloading TeamViewer_Setup_zhcn.exe from /root/jason/tool/TeamViewer_Setup_zhcn.exe
100% 3506KB 1753KB/s 00:00:02
/root/jason/tool/TeamViewer_Setup_zhcn.exe: 3590944 bytes transferred in 2 seconds (1753 KB/s)
sftp>
下面主要介绍一下利用sftp来向远程的linux服务器上传文件,或者从远程的服务器下载文件到你的本机。用sftp的主要参数如下
CreasyBear@CreasyBear:~> sftp -?
sftp: illegal option -- ?
usage: sftp [-1Cv] [-B buffer_size] [-b batchfile] [-F ssh_config]
[-o ssh_option] [-P sftp_server_path] [-R num_requests]
[-S program] [-s subsystem | sftp_server] host
sftp [[user@]host[:file [file]]]
sftp [[user@]host[:dir[/]]]
sftp -b batchfile [user@]host
全是英语,没怎么看懂,呵呵,但是有一个我看明白了,就是-o参数,是使用ssh的配置,继续man一下,就可以看到-o参数的准确用法。现在我们远程登录一下
CreasyBear@CreasyBear:~> sftp -oPort=8222dyy@192.168.0.125
注意-oPort=8022之间没有空格,而且注意大小写。现在我们就登录上来了。
sftp> ?
Available commands:
cd path 改变远程主机的路径
lcd path 改变本地主机的路径
chgrp grp path 改变文件的群组
chmod mode path 改变文件的读写权限
chown own path 改变文件的属主
help 显示帮助文档
get remote-path [local-path] 将远程主机的文件下载到本地
lls [ls-options [path]] 显示本地主机的文件列表
ln oldpath newpath 链接命令
lmkdir path 在本地创建文件夹
lpwd 显示本地的操作路径
ls [path] 显示远程主机的文件列表
lumask umask 设置本地的反码
mkdir path 在远程主机上创建文件
put local-path [remote-path] 上传文件
pwd 显示远程主机的操作路径
exit 退出
quit 退出
rename oldpath newpath 重命名远程文件
rmdir path 删除远程主机上的目录
rm path 删除远程主机上的文件
version 显示SFTP的版本
!command 退出命令行,回到本机
! 返回本机
? 显示帮助
以上就是sftp下的命令,主要用到的还是那么几个。比方说
sftp>get /home/dyy/install.sh /home/CreasyBear/mysql/
将远程主机上的install.sh文件下载到本地
sftp>lpwd
/home/CreasyBear/soft
sftp>put ./mysql.rpm /home/dyy
将本地的mysql.rpm文件上传到远程主机
由于sftp无法用tab键自动补齐,所以会经常用到lls,ls,pwd和lpwd命令。