指引网

当前位置: 主页 > 操作系统 > Linux >

linux中scp,sftp,ftp命令用法与区别

来源:网络 作者:佚名 点击: 时间:2017-05-13 00:19
[摘要]  在linux中scp,sftp,ftp函数都是用来传文件了,那么scp,sftp,ftp三个命令怎么使用及区别是什么呢?下文小编整理了两篇文章供大家参考。

scp

帮助命令: man scp

如果想上传或者想下载目录,最好的办法是采用tar压缩一下,是最明智的选择.
从远程主机 下载东西到 本地电脑

拷贝文件命令

scp user@host:/path/file /localpath //即 scp 用户名@IP:/文件路径  /本地文件路径
如果拷目录就
scp -r user@host:/dirpath /localpath //即 scp -r 用户名@IP:/目录路径  /本地文件路径
从本地 上传文件 或目录 到 远程主机

从本地上传文件 到 远程主机  
scp localfile user@host:/dirpath //即 scp 文件路径  远程主机用户名@ip:/存放文件的路径
从本地上传目录 到 远程主机  
scp -r localdir user@host:/dirpath //即 scp -r  本地目录路径   远程主机用户名@ip:/存放文件路径

sftp

举例,如远程主机的 IP 是 202.206.64.33或者是域名www.9958.pw,用户名是 root ,在命令行模下:

sftp root@202.206.64.33
或者 
sftp root@www.9958.pw
回车提示输入密码。进入提示符
sftp>
在sftp中get表示下载即得到; put表示上传即放置

sftp> get 远程主机下文件的路径   将文件保存到本地电脑的路径
sftp> put 本地文件的路径 将文件版保存到远程主机的路径
ls rm rmdir mkdir 这些命令都可以使用。同理调用本机都是加 l , 即 lls lrm.

要离开sftp,用exit 或quit、 bye 均可。详细情况可以查阅 man sftp.

linux-linux之间传输文件:

$ ls
AAAMEM oradiag_ttadmin other test_scp.txt test_sftp.txt tt_packet ttadmin@10.xx.xx.xx
$ who am i
ttadmin pts/3 Apr 27 15:35 (10.xxx.xxx.xxx)
$ sftp ttadmin@10.xx.xx.xx    //sftp 目的服务器用户名@目的服务器地址
Connecting to 10.xx.xx.xx...
Password:
sftp> put test_sftp.txt
Uploading test_sftp.txt to /export/home/ttadmin/test_sftp.txt
sftp> bye
$ sftp 10.xx.xx.xx       //此时连接的目的服务器用户名与本机用户一致
Connecting to 10.xx.xx.xx...
Password:
sftp> pwd
Remote working directory: /export/home/ttadmin
sftp> lpwd
Local working directory: /export/home/ttadmin

sftp> ls        //查看目的服务器目录下内容
.
..
.profile
tt_packet
sftp> lls       //查看本机目录下内容
AAAMEM oradiag_ttadmin other test_ftp.txt test_scp.txt test_sftp.txt tt_packet ttadmin@10.xx.xx.xx
sftp>


sftp> bye

$ scp test_scp.txtttadmin@10.xx.xx.xx:/export/home/ttadmin
Password:
test_scp.txt 100% |*******************************************************************************************************************************| 14 00:00
$ scp test_scp.txt ttadmin@10.xx.xx.xx:/export/home/ttadmin/test
Password:
test_scp.txt 100% |*******************************************************************************************************************************| 14 00:00
$

$ ftp
ftp> open 10.xx.xx.xx
Connected to 10.xx.xx.xx.
220 mem1-nh FTP server ready.
Name (10.xx.xx.xx:ttadmin): ttadmin
331 Password required for ttadmin.
Password:
230 User ttadmin logged in.
Remote system type is UNIX.
Using binary mode to transfer files.

ftp> put test_ftp.txt
200 PORT command successful.
150 Opening BINARY mode data connection for test_ftp.txt.
226 Transfer complete.
local: test_ftp.txt remote: test_ftp.txt
9 bytes sent in 0.00057 seconds (15.46 Kbytes/s)
ftp> bye

区别:

我们这里不谈三者的机制与安全性之间的区别,单是讲命令使用的区别。ftp和sftp上传的目的服务器目录是固定的(用户所在目录),scp可以使任何目录下(当然,必须得是用户的权限范围目录)。ftp与sftp的使用区别是:sftp后必须加参数;ftp后可以不加参数(进入ftp命令后用open ...连接目的服务器),也可以加参数(只有服务器地址一个参数!)。

------分隔线----------------------------
栏目列表
推荐内容