Linux SSH远程文件/目录传输命令scp使用详解
Linux SSH远程文件/目录传输命令scp一、scp是什么?
scp是secure copy的简写,用于在Linux下进行远程拷贝文件的命令,和它类似的命令有cp,不过cp只是在本机进行拷贝不能跨服务器,而且scp传输是加密的。可能会稍微影响一下速度。
二、scp有什么用?
1、我们需要获得远程服务器上的某个文件,远程服务器既没有配置ftp服务器,没有开启web服务器,也没有做共享,无法通过常规途径获得文件时,只需要通过scp命令便可轻松的达到目的。
2、我们需要将本机上的文件上传到远程服务器上,远程服务器没有开启ftp服务器或共享,无法通过常规途径上传是,只需要通过scp命令便可以轻松的达到目的。
三、scp使用方法
1、获取远程服务器上的文件
复制代码代码如下:
scp -P 2222 <a href="mailto:root@www.jb51.net:/root/lnmp0.4.tar.gz">root@www.jb51.net:/root/lnmp0.4.tar.gz</a> /home/lnmp0.4.tar.gz
上端口大写P 为参数,2222 表示更改SSH端口后的端口,如果没有更改SSH端口可以不用添加该参数。 root@www.jb51.net 表示使用root用户登录远程服务器www.jb51.net,:/root/lnmp0.4.tar.gz 表示远程服务器上的文件,最后面的/home/lnmp0.4.tar.gz表示保存在本地上的路径和文件名。
2、获取远程服务器上的目录
复制代码代码如下:
scp -P 2222 -r <a href="mailto:root@www.www.jb51.net:/root/lnmp0.4/">root@www.www.jb51.net:/root/lnmp0.4/</a> /home/lnmp0.4/
上端口大写P 为参数,2222 表示更改SSH端口后的端口,如果没有更改SSH端口可以不用添加该参数。-r 参数表示递归复制(即复制该目录下面的文件和目录);root@wwwjb51.net 表示使用root用户登录远程服务器wwwjb51.net,:/root/lnmp0.4/ 表示远程服务器上的目录,最后面的/home/lnmp0.4/表示保存在本地上的路径。
3、将本地文件上传到服务器上
复制代码代码如下:
scp -P 2222 /home/lnmp0.4.tar.gz <a href="mailto:root@www.www.jb51.net:/root/lnmp0.4.tar.gz">root@www.www.jb51.net:/root/lnmp0.4.tar.gz</a>
上端口大写P 为参数,2222 表示更改SSH端口后的端口,如果没有更改SSH端口可以不用添加该参数。 /home/lnmp0.4.tar.gz表示本地上准备上传文件的路径和文件名。root@wwwjb51.net 表示使用root用户登录远程服务器wwwjb51.net,:/root/lnmp0.4.tar.gz 表示保存在远程服务器上目录和文件名。
4、将本地目录上传到服务器上
复制代码代码如下:
scp -P 2222 -r /home/lnmp0.4/ <a href="mailto:root@www.www.jb51.net:/root/lnmp0.4/">root@www.www.jb51.net:/root/lnmp0.4/</a>
上 端口大写P 为参数,2222 表示更改SSH端口后的端口,如果没有更改SSH端口可以不用添加该参数。-r 参数表示递归复制(即复制该目录下面的文件和目录);/home/lnmp0.4/表示准备要上传的目录,root@wwwjb51.net 表示使用root用户登录远程服务器wwwjb51.net,:/root/lnmp0.4/ 表示保存在远程服务器上的目录位置。
5、可能有用的几个参数 :
-v 和大多数 linux 命令中的 -v 意思一样 , 用来显示进度 . 可以用来查看连接 , 认证 , 或是配置错误 .
-C 使能压缩选项 .
-4 强行使用 IPV4 地址 .
-6 强行使用 IPV6 地址 . 感谢楼主的详细分享!
看了楼主的scp使用教程,真的很全面很实用!对于我们这些经常需要在Linux服务器之间传输文件的人来说,scp确实是必备工具。
补充几点小技巧:
[*]1. 保持文件属性和时间戳
使用 -p 参数可以保持文件的修改时间、访问时间以及权限:
scp -p /local/file user@remote:/path/
[*]2. 限速传输
如果担心scp占用太多带宽,可以使用 -l 参数限制速度(单位是Kbit/s):
scp -l 1024 /local/file user@remote:/path/
这样传输速度就会被限制在128KB/s左右。
[*]3. 后台传输
大文件传输时可以使用 nohup 让它在后台运行:
nohup scp -r /local/dir user@remote:/path/ &
[*]4. 注意事项
-P 参数(大写)一定要放在前面,不然可能会被识别为其他参数哦!
再次感谢楼主的教程,收藏了!希望对其他新手也有帮助~
回复 顶
頁:
[1]