科学的在主机间传输文件

长久以来,一直被如何高效的传输文件困扰。比如说打印PDF啊,在主机间传输文件啊。去打印店的话用USB可以解决,但这样还好中毒,一不小心还会把U盘忘掉,还要插拔4次,真是麻烦。况且很多情况下用不了U盘。看了我下面的方法后,U盘就剩下在没网的情况下使用的价值了。

原始:

要复制另一台主机的一个小文件,而且现在正是ssh的状态,那么可以直接cat,然后选中内容,再粘贴到本机文件。但如果这个小文件是个zip,或者其他什么二进制文件就不能直接复制了,因为不可打印字符的存在。那就用base64。简单粗暴。

 Netcat:

顾名思义,就是联网的cat。netcat(nc)被称为Swiss Army Knife of networking.我还没有深入研究过,就使用的几个命令来看,确实很吊。他也能用来传输文件。下面是简单的例子,具体选项看man。这个方法很迅速,很干净。缺点是对方是windows怎么办?

临时Web服务器:

这tm总没问题了吧,只要有浏览器就能传输文件了。python,对,python就是这么方便。我就想说,U盘存在的意义在哪?据测试,python的SimpleHTTPServer能轻松胜任10M/s的传输速率传输3G文件。更高速率还没测过。

 安全:

有时候还有满足安全方面的考虑,以及复制目录的要求,前面的几种方法好像不是很难胜任。所以需要更专业的工具。scp和sftp之前在实用ssh已经提到过。使用起来也非常方便。而rsync则是更专业的工具,可以支持增量复制。相当于在本地和远程目录间保持同步。rsync也能使用ssh的别名,更加方便了。

一定还有更吊的,发现了再更新。

链接:

  1. nc transfer file
  2. rsync