linux nc

/*
 * nc
 */
    远程文件传输

    目的主机监听

        nc -l 监听端口[ 未使用端口] > 要接收的文件名
        nc -l 8888 > ac.c

    源主机发起请求

        nc 目的主机ip 目的端口 < 要发送的文件
        nc 192.168.11.21 8888 < /home/share/ac.c

/*
 * 使用
 *        收方先来, 然后发方再运行.
 */

    1.收方 (192.168.11.21)

        监听一个端口,把接收数据重定向(或者说保存)到文件

        nc -l 8888 > ac.c


    2.发方

        请求向收方送文件,文件输入到收方的端口

        nc -w 3 192.168.11.21 8888 < /home/share/ac.c

/*
 * 将A机器(192.168.149.100)上的文件目录(/data)下的文件打包发给B机器(192.168.149.200)
 */

    1.在接收文件的机器上(B:192.168.149.200)运行以下命令

        # A机器给B机器发送多个文件,传输目录需要结合其它的命令,比如tar,管道后面必须是 - ,不能是其它
        nc -l 8888 | tar zxvf -


    2.在发文件的机器上(A:192.168.149.100)/data路径下执行以下命令

        # A机器打包文件并连接B机器的端口,管道前面表示把当前目录的所有文件打包为 - ,然后使用nc发送给B机器
        tar zcf - * | nc 192.168.149.200 8888

/*
 * exmaple
 */
    server:
        nc -l  1234 < hdipccall

    board client:
        nc 192.168.6.105 1234 > hdipccall

                busybox run for server:
                nc -lp 1234 < hdipccall

你可能感兴趣的:(Linux,linux)