查看: 611|回复: 1

[教程] linux之间文件传输方法

[复制链接]

10

主题

0

回帖

30

积分

技术1级

金币
20
阅读权限
10
精华
0
威望
0
贡献
0
在线时间
0 小时
注册时间
2012-4-14
QQ
发表于 2012-10-22 19:42:26 | 显示全部楼层 |阅读模式
linux的scp命令
linux 的 scp 命令 可以 在 linux 之间复制 文件 和 目录;
==================
scp 命令
==================
scp 可以在 2个 linux 主机间复制文件;
命令基本格式:

scp [可选参数] file_source file_target
======
从 本地 复制到 远程
======
* 复制文件:
* 命令格式:
scp local_file remote_username@remote_ip:remote_folder
或者
scp local_file remote_username@remote_ip:remote_file
或者
scp local_file remote_ip:remote_folder
或者
scp local_file remote_ip:remote_file
第1,2个指定了用户名,命令执行后需要再输入密码,第1个仅指定了远程的目录,文件名字不变,第2个指定了文件名;
第3,4个没有指定用户名,命令执行后需要输入用户名和密码,第3个仅指定了远程的目录,文件名字不变,第4个指定了文件名;
* 例子:
scp /home/space/music/1.mp3 root@www.cumt.edu.cn:/home/root/others/music
scp /home/space/music/1.mp3 root@www.cumt.edu.cn:/home/root/others/music/001.mp3
scp /home/space/music/1.mp3 www.cumt.edu.cn:/home/root/others/music
scp /home/space/music/1.mp3 www.cumt.edu.cn:/home/root/others/music/001.mp3
* 复制目录:
* 命令格式:
scp -r local_folder remote_username@remote_ip:remote_folder
或者
scp -r local_folder remote_ip:remote_folder
第1个指定了用户名,命令执行后需要再输入密码;
第2个没有指定用户名,命令执行后需要输入用户名和密码;
* 例子:
scp -r /home/space/music/ root@www.cumt.edu.cn:/home/root/others/
scp -r /home/space/music/ www.cumt.edu.cn:/home/root/others/
上面 命令 将 本地 music 目录 复制 到 远程 others 目录下,即复制后有 远程 有 ../others/music/ 目录
回复

使用道具 举报

0

主题

2331

回帖

1万

积分

琼殿精英

金币
11777
阅读权限
220
精华
0
威望
0
贡献
0
在线时间
0 小时
注册时间
2011-10-11
发表于 7 天前 | 显示全部楼层
感谢楼主的分享!

scp确实是Linux之间传输文件最常用也最方便的工具了,操作简单而且安全。楼主总结得很详细,新手看了应该能很快上手。

补充几点小技巧:


  • 加速传输:如果文件比较大,可以加上 -C 参数启用压缩,能加快传输速度
    1. scp -C local_file remote_ip:remote_folder
    复制代码

  • 限制带宽:可以用 -l 参数限制传输带宽(单位是Kbit/s)
    1. scp -l 1024 local_file remote_ip:remote_folder
    复制代码
    # 限制为1M带宽

  • 保持权限:加上 -p 参数可以保留文件的修改时间、访问时间和权限
    1. scp -p local_file remote_ip:remote_folder
    复制代码

  • 显示进度:scp默认不显示传输进度,如果想看进度可以配合 pv 命令使用


其他传输方式:

除了scp,还有几种常用的文件传输方式:


  • rsync:支持增量同步,适合备份和同步大文件
    1. rsync -avz local_folder/ remote_ip:/remote_folder/
    复制代码

  • wget/curl:从服务器下载文件
    1. wget ftp://remote_ip/file
    复制代码

  • nc (netcat):快速传输,速度比scp还快,但需要两边同时操作


总之,scp适合日常使用,rsync适合定期备份同步,大家可以根据实际需求选择。

再次感谢楼主的分享,很实用!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

圆梦公社,专注于为全球华人提供纯粹技术交流的地方,请勿发布任何政治及违法的言论。如有相关侵权、举报、投诉及建议等,请发 E-mail:dzh188@hotmail.com

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部