如何使用nc和pv命令在两台计算机之间传输文件

本文将解释如何使用nc(网络实用程序)和pv(管道查看器)命令在两台Linux计算机之间传输文件以监视进度。

你好老乡Linux的读者,我为您带来的又一伟大的文章,从我们的Linux技巧和诀窍系列,这一次我们将使用两个鲜为人知的Linux工具 ,你应该要知道的。

本文将解释你如何使用NC( 网络实用程序 )和PV( 管浏览器 )命令,进一步移动让我解释一下这两个命令前两Linux的计算机之间传输文件。

在Linux服务器之间传输文件

在Linux服务器之间传输文件

NC代表Netcat的和经常指出的“ 瑞士军刀 ”,是用于网络调试和调查一个网络工具,它也可用于创建一个使用TCP或UDP端口扫描,文件传输和多个网络连接。 它被创建为一个可靠的后端,并特别用于程序和脚本,因为它可以生成几乎任何类型的网络连接,并有许多内置的功能。

光伏在短管器是用于通过一个管道监测数据的进度寄终端基于工具,它允许用户看到与进度条数据的进度,显示经过的时间,完成百分比,当前的吞吐量速率,总数据传输,并估计完成此过程所需的时间。

如何使用pv(管道查看器)命令监视数据的进度

现在让我们进一步,看看我们如何可以结合这两个命令在两个Linux计算机之间传输文件,为了本文的目的,我们将使用两个Linux计算机如下:

Machine A with IP : 192.168.0.4
Machine B with IP : 192.168.0.7

注:我强烈建议不要使用netcat来在公网发送和接收数据,因为它不使用任何登录或认证,唯一的要求是客户端IP和监听端口号和数据传送过来的网络是不安全的,因此,它始终保留给高级Linux用户,并优先在受保护的本地网络上使用。

情况下数据的安全性是比较重要的,然后一直使用的rsync通过SSHSCP通过SSH

现在,让我们开始与NC光伏命令的一些真正简单的例子,但这样做既实用工具必须安装在系统上,如果不使用相应的分发包管理工具,建议安装在他们面前:

# yum install netcat pv        [On RedHat based systems]
# dnf install netcat pv        [On Fedora 22+ versions]
# apt-get install netcat pv    [On Debian and its derivatives]

如何在两台Linux机器之间传输文件?

让我们假设你要发送一个叫大文件CentOS-7-x86_64-DVD-1503.iso从计算机AB通过网络,最快捷的方式实现这一目标用NC用来发送基于TCP的网络文件的网络工具,PV监测数据和tar实用程序的进展情况对数据进行压缩,以提高传输速度。

在Linux机器A

第一次登录到机器'A',IP地址为192.168.0.4,然后运行以下命令。

# tar -zcf - CentOS-7-x86_64-DVD-1503.iso | pv | nc -l -p 5555 -q 5
Netcat命令发送文件

Netcat命令发送文件

让我解释一下上面命令中使用的选项:

  1. tar-zcf =tar是用来压缩/解压缩归档文件和参数-c创建一个新的.tar归档文件的磁带归档实用程序,-f指定存档文件和-z过滤存档通过gzip的类型。
  2. 的CentOS -7- x86_64的-DVD-1503.iso =指定发送通过网络的文件名,也可以是文件名或路径到一个目录。
  3. PV =管道查看器来监控数据的进展情况。
  4. NC -l -p 5555 -q 5 =网络工具,用于发送和通过TCP接收数据和论据-l用于监听传入连接,-p 555指定的源端口使用和-q 5等待的秒数然后退出。

在Linux机器B

现在登录到机器'B',IP地址为192.168.0.7,然后运行以下命令。

# nc 192.168.1.4 5555 | pv | tar -zxf -
使用nc和pv命令传输数据

使用nc和pv命令传输数据

就这样,该文件被传输到计算机B,你将能够观看操作有多快执行。 有吨数控更多其他伟大的使用量(不包括尚未,但很快就写出来)和PV(我们已经涵盖在这一个细节的文章在这里 )命令,如果你知道任何实际的例子,请让我们通过评论知道!