nc 命令传文件

工作中,由于开发机与线上机器分属不同的机房,需要跳板机进行登录,而跳板机的scp功能貌似受限,导致线上和线下机器传输数据非常麻烦,速度还较慢。得高手指点,nc也可用于文件传输,且不依赖于scp。

用法很简单:

1、从跳板机传文件至开发机:

在跳板机上: nc -l  端口号 < 待传输文件名

在开发机上: nc  跳板机ip 端口号 > 待传输文件名

2、从开发机传文件至跳板机:

在跳板机上: nc -l 端口号 > 待传输文件名

在开发机上: nc 跳板机ip 端口号 < 待传输文件名

文件传输结束后,都会自动关闭本次侦听连接。

例如下:

目的主机监听

nc -l 监听端口<未使用端口> >要接收的文件名

nc -l 4444 >cache.tar.gz

源主机发起请求

nc  目的主机ip   目的端口 <要发送的文件

nc 192.168.0.85 4444 </root/cache.tar.gz

netstat  如下

[[email protected] ]# netstat-tpln

tcp       0     00.0.0.0:4444               0.0.0.0:*                  LISTEN     18166/nc

英文描述如下

DATA TRANSFER

Start by using nc to listen on aspecific port, with output captured into a file:

$ nc -l 1234 > filename.out
 Using a second machine, connect to the listeningnc process, feeding it the file which is to betransferred:

$ nc host.example.com 1234 < filename.in

另附nc的其他选项说明:

语  法:nc [-hlnruz][-g<网关...>][-G<指向器数目>][-i<延迟秒数>][-o<输出文件>][-p<通信端口>][-s<来源位址>][-v...][-w<超时秒数>][主机名称][通信端口...]

补充说明:执行本指令可设置路由器的相关参数。

参  数:
  -g<网关>   设置路由器跃程通信网关,最丢哦可设置8个。
  -G<指向器数目>   设置来源路由指向器,其数值为4的倍数。
  -h   在线帮助。
  -i<延迟秒数>   设置时间间隔,以便传送信息及扫描通信端口。
  -l   使用监听模式,管控传入的资料。
  -n   直接使用IP地址,而不通过域名服务器
  -p<通信端口>   设置本地主机使用的通信端口。
  -r   乱数指定本地与远端主机的通信端口。
  -s<来源位址>   设置本地主机送出数据包的IP地址。
  -u   使用UDP传输协议
  -v   显示指令执行过程。
  -w<超时秒数>   设置等待连线的时间。
  -z   使用0输入/输出模式,只在扫描通信端口时使用

时间: 2024-07-29 16:14:44

nc 命令传文件的相关文章

Linux nc 命令传输文件

NAME nc - arbitrary TCP and UDP connections and listensSYNOPSIS     nc [-46DdhklnrStUuvz] [-i interval] [-p source_port] [-s source_ip_address] [-T ToS] [-w timeout]        [-X proxy_protocol] [-x proxy_address[:port]] [hostname] [port[s]] 由于公司的设备sud

终端下nc命令传送文件

一.接收端pc命令: ip:192.168.228.222 nc -l 1234 > install.log 二.发送端pc命令: ip:192.168.228.221 nc -w 1000 192.168.228.222 1234 < install.log 三.命令语法 想要连接到某处: nc [-options] hostname port[s] [ports] - 绑定端口等待连接: nc -l -p port [-options] [hostname] [port] 参数: -g g

nc命令在Linux服务器之间互传文件或文件夹

有时候,在线上服务器上传文件或文件夹,没有做秘钥,也不知道用户的相关密码,scp和rsync都使用不了. 推荐使用nc命令在Linux服务器之间互传,条件是互相能ping通. 文件夹: 接受文件的服务器 nc -l 9995 | tar zxvf - (可以先获取本地内网ip-1.1.1.1,稍后需要复制到另外一条服务器上,9995端口保持一致即可,可随意)文件所在的服务器 tar zcvf - 文件名称/* | nc 1.1.1.1 9995 文件:接收端 nc -l 1234 > abc.l

用scp命令通过SSH互传文件

上传单个文件到远程服务器 命令格式 scp [/path/local_dir/filename] [[email protected]:/path/remote_dir] 上传本地的vimrc文件到远程服务器 15:10 [email protected] /home/luna $ scp /home/luna/scp/vimrc [email protected]:/usr/home/luna/.vimrc Password for [email protected]: vimrc 100%

Linux服务器通过aws命令行上传文件至S3

目的Linux服务器通过AWS命令行上传文件至S3 配置打开你的AWS控制台: 连接你的Linux服务器,按照以下步骤操作: # 安装pip yum -y install python-pip   # 安装awscli pip install awscli   # 初始化配置 aws configure # 做这一步时系统会要求你输入"访问密钥ID"."私有访问密钥"."默认区域名称"."默认输出格式",前两个在创建IAM用户

C#远程执行Linux系统中Shell命令和SFTP上传文件

一.工具:SSH.Net 网址:https://github.com/sshnet/SSH.NET 二.调用命令代码: Renci.SshNet.SshClient ssh = new Renci.SshNet.SshClient("192.168.1.104", "sindrol", "123456"); ssh.Connect(); while (true) { Console.WriteLine("please input com

rz命令上传文件

对于linux的主机,如果要上传文件,是一定要装个FTP类的客户端,只要有SSH客户端一样可以作到. 1.使用xshell连到远程linux主机,键入rz命令 [[email protected] tmp]# rz 2.在跳出的窗口选择想要上传的文件 3.点击打开以后传送文件 4.查看目录,确定刚才选的文件已经上传成功 [[email protected] tmp]# ll 总用量 892 -rw-r--r--. 1 root root 911509 2月 26 01:31 nginx-1.10

在XShell中使用sz和rz命令下载和上传文件

输入命令:sz filename 回车后弹出一个"浏览文件夹"对话框中,选择保存目录 END 使用rz上传文件 输入命令: rz 回车后弹出一个对话框,选择一个或多个文件,选择"打开" 3 上传到服务器的路径为当前执行rz命令的目录,输入命令: dir 查看上传的文件 END

SecureCRT使用sz和rz命令进行文件的上传和下载

SecureCRT可以使用sz和rz命令进行文件的上传和下载. sz文件下载: 格式:sz 文件名称 即可将服务器的文件下载至本地. rz文件上传: 格式:rz 文件名称 即可将本地文件上传至服务器. 本地文件夹可以通过Options-->Session Options中进行设置.