【sx sb sz】Centos/Linux sx、sb、sz命令详细介绍
简介
系统版本:Centos7.6
软件版本:lrzsz 0.12.20
sx、sb、sz命令属于lrzsz程序的内容,是使用纠错协议(ZMODEM、YMODEM、XMODEM)通过拨号串行端口将一个或多个文件发送到在 PC-DOS、CP/M、Unix、VMS 及其他操作系统下运行的各种程序(如,Windows下的Xshell)。虽然 sz 比较强大,可以从 cu 调用,但很少系统的 cu 版本强大到可以允许 sz 正常工作。但是Professional-YAM 的 Unix 版本可用于此类应用程序的调用。
sz 使用 ZMODEM 协议发送一个或多个文件。与 XMODEM 相比,ZMODEM 极大地简化了文件传输。除了友好的用户界面,ZMODEM 还为个人计算机和其他用户提供了一种高效、准确和强大的文件传输方法和在应用程序之间提供了完整的端到端数据完整性的保证。ZMODEM 的 32 位 CRC 能够在安全等级更高的网络环境下,不触发警告从而捕抓错误信息。高级文件管理功能包括自动下载(无需用户干预自动启动文件下载)、显示单个和总文件长度以及传输时间估计、崩溃恢复、选择性文件传输以及精确的文件日期和长度的保留。来自另一个程序的输出可以通过管道传递给 sz 进行传输,将标准输入表示为“-”:
> ls -l | sz -
程序输出以文件名 sPID.sz 进行传输,其中 PID 是 sz 程序的进程 ID。如果设置了环境变量 ONAME,则使用该变量。在这种情况下,Unix 命令:
将向 PC-DOS 控制台显示发送一个“文件”
> ls -l | ONAME=con sz -ay -
# -y 选项指示接收方无条件打开文件进行写入
# a 选项导致接收方将 Unix 换行符转换为 PC-DOS 回车符和换行符
sb 批量使用 YMODEM 或 ZMODEM 协议发送一个或多个文件。当接收方请求时,sb 支持带有“cbreak”tty 的模式、XON/XOFF 流控制以及中断字符设置为 CAN(^X)的 YMODEM-G。YMODEM-G(Professional-YAM 的 G 选项)通过不对每个传输的扇区进行确认,在无错误的通道(直接连接、X.PC 等)上提高了吞吐量。在 Unix 系统上,会传输有关文件的其他信息。如果接收程序使用此信息,则传输的文件长度控制写入输出数据集的确切字节数,并且相应地设置修改时间和文件模式。
sx 使用 XMODEM 或 XMODEM-1k 协议(有时误称为“YMODEM”)发送单个文件。用户必须向发送和接收程序提供文件名。如果在设置了 $SHELL 且该变量包含字符串 rsh、rbash 或 rksh(受限 shell)的情况下调用 sz,将以受限模式运行。受限模式将路径名限制在当前目录和 PUBDIR(通常为 /usr/spool/uucppublic)及其子目录。
sz [-oqtv] -c COMMAND 以这种形式向 ZMODEM 接收器发送单个命令以执行。sz 以命令的返回值退出。如果命令包含空格或对 shell 特殊的字符,则必须引用它。
sz [-oqtv] -i COMMAND 以这种形式向 ZMODEM 接收器发送单个命令以执行。sz 在接收器正确接收命令后立即退出(在执行之前)。
sz -TT 以这种形式向终端输出所有 256 个代码组合。如果您在发送文件时遇到困难,此命令可查看操作系统正在吃掉哪些字符代码。
如果调用 sz 时 stdout 和 stderr 指向不同的数据集,则将 Verbose(-v 选项)设置为 2,导致逐帧进度报告发送到 stderr。这可以使用 -q 选项禁用。
基础语法
> sz [-+8abdefkLlNnopqTtuvyY] file ...
> sb [-adfkqtuv] file ...
> sx [-akqtuv] file
> sz [-oqtv] -c COMMAND
> sz [-oqtv] -i COMMAND
> sz -TT
选项介绍
| 选项 | 选项说明 |
|---|---|
| -+,--append | 将接收到的数据附加到现有文件中(仅限 ZMODEM) |
| -2,--twostop | 若系统支持,该选项可使用两位的停止bit,使用该选项要谨慎 |
| -8,--try-8k | 尝试将块大小提升到 8KB,但这与标准的 ZMODEM 不兼容(仅限 ZMODEM) |
| --start-8k | 以 8KB 的块大小开始读取,该选项类似于 --try-8k |
| -a,--ascii | 将传输文件中的换行符(NL)转换为回车符/换行符(CR/LF)。对于 XMODEM 和 YMODEM,这由发送方完成;对于 ZMODEM,这由接收方完成 |
| -b,--binary | 仅限 ZMODEM,以二进制模式传输文件:传输文件时不进行任何转换 |
| -B,--bufsize | 后跟数字N。在将数据写入磁盘之前缓冲 N 个字节。默认值是 16384,在大多数情况下是足够的。如果您的机器运行缓慢,或者磁盘接口性能下降,或者存在其他硬件问题,导致传输速率较慢,适当增加缓冲区大小可能有助于提高传输效率。但如果您设置为 -1 或“auto”,虽然会为整个文件分配足够大的缓冲区,但如果这导致计算机内存不足开始进行页面交换,反而可能会降低性能。使用此选项会关闭输入文件的内存映射。这会增加内存和 CPU 的使用 |
| -c,--command | 后跟其他命令COMMAND。向接收方发送命令以执行,并返回该命令的退出状态 |
| -C,--command-tries | 后跟数字N。发送时发生错误将重试发送命令 N 次,默认为11 次 |
| -d,--dot-to-slash | 在传输的路径名中,将所有的“.”替换为“/”。因此,C.omenB0000(这对 MSDOS 或 CP/M 来说是不能识别的)会被传输为 C/omenB0000。如果结果文件名的主干部分超过 8 个字符,会插入一个“.”,最多允许总共 11 个字符。该选项应同时使用 --full-path 选项 |
| --delay-startup | 后跟数字N。在进行任何操作之前等待 N 秒钟 |
| -e,--escape | 在传输完成后执行退出命令,实现方式为强制发送方转义所有控制字符。通常,XON、XOFF、DLE、CR-@-CR 和 Ctrl - X (XON 用于继续传输、XOFF 用于暂停传输等)都会被转义。如果已经存在同名文件,将强制发送方对新文件进行重命名。 |
| -f,--full-path | 发送完整路径名。通常,在传输文件名时会去掉目录前缀。使用 --dot-to-slash 选项时,该选项也会开启 |
| -h,--help | 显示帮助 |
| -i,--immediate-command | 后跟其他命令COMMAND。向接收方发送 COMMAND 以执行,在接收程序成功接收后,sz 命令立即退出,无需等待 |
| -k,--1k | 在XMODEM和YMODEM中使用 1024 字节的块而不是默认的 128 字节的块来发送文件,1024 字节的数据包在高比特率下能加快文件传输速度。而 ZMODEM 会流式传输数据以获得最佳的吞吐量 |
| -L,--packetlen | 后跟数字N。使用长度为 N 的 ZMODEM 子数据包。N 值较大(32 <= N <= 1024)会使吞吐量稍高,N 值较小则会加快错误恢复速度。默认为低于 300 波特(Baud)时为 128,高于 300 波特(Baud)时为 256,高于 2400 波特(Baud)时为 1024 |
| -m,--min-bps | 后跟数字N。如果每秒字节数(BPS 速率)在特定时间内低于 N,则停止传输,具体请查看 --min-bps-time 选项说明 |
| -M,--min-bps-time | -M 后跟数字N。与 --min-bps 一起使用,默认值是 120(秒) |
| -l ,--framelen | 后跟数字N。每发送 N(32 ≤ N ≤ 1024)个字符后等待接收方确认数据是否正确后再继续发送。当没有 XOFF 流控制时,这可用于避免网络溢出 |
| -n,--newer | 在ZMODEM中如果目标文件(接收方)不存在,则发送所有文件。如果源文件(发送方)比目标文件新,则覆盖目标文件 |
| -N,--newer-or-longer | 在ZMODEM中如果目标文件(接收方)不存在,则发送所有文件。如果源文件(发送方)比目标文件新或者比目标文件长,就覆盖目标文件 |
| -o,--16-bit-crc | 在ZMODEM中禁用 32 位 CRC 的自动选择 |
| -O,--disable-timeouts | 禁用读取超时处理代码。这会导致 lsz 在对方不发送任何内容时挂起,会有少量的性能提升并降低系统负载(系统调用次数减少约 50%),处理的任务是实时性要求很高的任务时,使用此选项时请小心 |
| -p,--protect | ZMODEM保护:如果目标文件已存在,则跳过该文件 |
| -q,--quiet | 静默模式,不显示传输进度和状态信息 |
| -R,--restricted | 进入更严格的限制模式。将路径名限制在当前目录和 PUBDIR(通常是 /usr/spool/uucppublic)以及其子目录中 |
| -r,--resume | 在ZMODEM中恢复中断的文件传输。如果源文件比目标文件长,传输将从源文件中与目标文件长度相等的偏移量处开始 |
| -s,--stop-at | 后跟HH:MM。在 HH 小时,MM 分钟时停止传输。另一种形式,使用 +N 而不是 HH:MM,会在 N 秒后停止传输 |
| -S,--timesync | 启用时间同步协议支持。该选项与标准的 ZMODEM 不兼容,使用时请谨慎 |
| --syslog[=off] | 打开或关闭系统日志记录。默认设置在配置时确定。如果在编译时未包含系统日志支持,此选项将被忽略。 |
| -t,--timeout | 后跟超时处理(TIM)时间。将超时时间更改为 TIM 的十分之一秒 |
| -T,--turbo | 不转义某些字符(如:^P、^P|0x80、telenet 转义序列 [CR + @])。这会使性能提高约 1%,在正常情况下不会报错,需要注意的是如果通过终端服务器连接,^P 可能会有用 |
| --tcp | 尝试发起一个 TCP/IP 连接。lsz 会要求接收端的 ZMODEM 打开一个 TCP/IP 连接。所有的握手操作(使用哪个地址/端口)都由 ZMODEM 程序完成。不推荐使用此选项,因为只有 lrzsz 是唯一能使用的 ZMODEM(私有扩展)程序。如果两个程序通过非标准的网络连接连接,可能会需要该选项。所以使用此选项会带来安全风险,在此期间可能会有其他人连接到该端口 |
| --tcp-client | 后跟 地址:端口 。作为一个 TCP/IP 客户端:连接到给定的端口。请查看“--tcp-server”以获取更多信息。 |
| --tcp-server | 作为服务端运行,将会创建一个套接字和打印出相关信息,等待客户端连接。不推荐使用此选项,因为只有 lrzsz 是唯一能使用的 ZMODEM(私有扩展)程序。但如果您必须使用 ZMODEM,并且不能使用 lsz 的 --tcp 选项(可能是因为您的 telnet 不允许生成一个本地程序,其标准输入/输出连接到远程端),您可能会想要使用此选项。如果您使用此选项,则必须使用 --tcp-client 选项启动 lsz 。lrz 在启动时会打印出地址和端口。使用此选项会带来安全风险,在此期间可能会有其他人连接到该端口 |
| -u | 在成功传输文件后断开连接 |
| -U,--unrestrict | 关闭限制模式(如果在受限的 shell 下运行,则无法实现此操作) |
| -w,--windowsize | 后跟数字N,代表窗口尺寸。设置视窗尺寸为N |
| -v,--verbose | 详细模式,操作过程会显示在窗口当中 |
| -X,--xmodem | 使用XMODEM协议 |
| -y,--overwrite | ZMODEM 接收到文件后,自动覆盖同名文件 |
| -Y,--overwrite-or-skip | ZMODEM 接收到文件后,自动覆盖同名文件,但会跳过在目标系统上具有相同路径名的文件 |
| --ymodem | 使用YMODEM协议 |
| -Z,--zmodem | 使用ZMODEM协议 |
基本用法
1、下载单个文件
> sz file
2、 下载多个文件
> sz file1 file2 file3
3、下载目录
> tar -czf folder.tar.gz folder/ # 压缩当前目录下的 folder 目录
> sz folder.tar.gz
安全事项
在受限模式下将路径名限制在当前目录和 PUBDIR(通常是 /var/spool/uucppublic)及其子目录中,并禁用远程命令执行。要使用更严格的限制模式,请设置环境变量 ZMODEM_RESTRICTED 或启用 -R 选项。如果 lsz 不是在受限的 shell 下运行,可以使用 -U 选项关闭限制模式。使用 --tcp-client 或 --tcp-server 选项会带来安全风险,因为可能会有其他人在您之前连接到该端口并获取您的数据。如果对更安全的模式有强烈需求,我可能会引入某种密码验证(例如,需要登陆账号才能连接或者输入密码才能连接)。
环境变量
1、ZNULLS:用于指定在 ZDATA 帧之前要发送的空字节的数量。
2、SHELL:如果此变量包含 rsh 或 rksh,lsz 会识别为受限的 shell。
3、ZMODEM_RESTRICTED:如果设置了此变量,lsz 会进入受限模式。
4、TMPDIR:如果设置了此环境变量,将用作放置对时间同步请求的应答文件的目录。TMP 如果未设置 TMPDIR,则使用 TMP。如果 TMPDIR 和 TMP 都未设置,则将使用 /tmp 。
注意事项
1、当程序没有正确编译是会显示“Caught signal 99”,该信号的详细信息要查看 rbsb.c 中的“bibi(99)”。
2、从大多数系统版本的 cu 中调用 sz 不起作用,因为 cu 的接收进程会与 sz 争夺调制解调器的字符。
3、在至少一个 BSD 系统上,当 sz 接近文件末尾几千字节时,会挂起或退出。使用“-w 8192”标志解决了这个问题。真正原因未知,也许是内核 TTY 输出例程中的一个错误。
4、未正确使用指定文件传输协议(ZCOMM 或 Pro-YAM 等)的程序可能会导致 sz 的端口“挂起”一两分钟。
5、对于那些声称支持 YMODEM 但实际支持有偏差的程序,实际上只支持 1k 块的 XMODEM。
6、XMODEM 传输每个文件会累计最多 127 个垃圾字节。XMODEM-1k 和 YMODEM-1k 传输使用 128 字节的块以避免额外填充。
7、YMODEM 程序使用传输开始时发送的文件长度来将文件修剪到正确长度时,可能问题会发生在传输时,而源文件一直在增长。此问题与 ZMODEM 传输无关,ZMODEM 无条件保留确切的文件长度。
8、绝大多数 ZMODEM 选项仅传递给接收程序,但有些程序并未实现所有这些选项。
9、当输入来自管道时,应使用循环缓冲和 ZMODEM 滑动窗口,而不是每 1024 字节确认帧。如果无法打开文件,sz 会发送一个 ZMODEM 命令来反馈状况;超出重试设定值之前检查是否至少存在一个可访问的文件。测试模式会在接收系统上留下一个零长度的文件。
10、一些高速调制解调器存在固件错误,当高速传输方向反转时会丢失字符。环境变量 ZNULLS 可用于指定在 ZDATA 帧之前要发送的空字节数量。对于 4.77 MHz 的 PC,典型值为 101,对于 AT 则为 124。
相关文章:
【sx sb sz】Centos/Linux sx、sb、sz命令详细介绍
简介 系统版本:Centos7.6 软件版本:lrzsz 0.12.20 sx、sb、sz命令属于lrzsz程序的内容,是使用纠错协议(ZMODEM、YMODEM、XMODEM)通过拨号串行端口将一个或多个文件发送到在 PC-DOS、CP/M、Unix、VMS 及其他操作系统下运…...
【网络层】IP报文解析和网段划分
文章目录 网络层的作用IP协议协议报头格式网段划分DHCPCIDR划分方案 IP地址的数量限制私有IP地址和公网IP地址LAN和WAN 路由 网络层的作用 前面学习了应用层和传输层,应用层的作用是为用户和应用程序提供网络服务,传输层的作用是提供端口到端口的通信服…...
[GXYCTF2019]禁止套娃1
打开题目 进行常规的检测漏洞,扫描目录发现存在.git文件夹下的文件存在 <?php include "flag.php"; echo "flag在哪里呢?<br>"; if(isset($_GET[exp])) { if (!preg_match(/data:\/\/|filter:\/\/|php:\/\/|phar:\/\…...
人工智能时代,数字化工厂如何改革?提升竞争力?
在人工智能时代,数字化工厂通过数据驱动的决策、智能制造、柔性生产、物联网整合以及人机协作,实现生产效率和产品质量的全面提升,并不断创新以保持竞争力。 --题记 在人工智能时代,数字化工厂的改革…...
气膜建筑的抗风与防火性能:保障仓储的安全—轻空间
气膜建筑以其独特的结构和材料优势,为仓储设施提供了可靠的安全保障。在应对自然灾害特别是强风和火灾时,气膜建筑展示了优异的抗风和防火性能。轻空间将详细探讨这些性能及其在实际应用中的表现。 气膜建筑的抗风能力源于其特殊的结构设计和高性能材料。…...
【秋招笔试】2024-08-07-YT游戏(研发岗)-三语言题解(CPP/Python/Java)
🍭 大家好这里是 春秋招笔试突围,一起备战大厂笔试 💻 ACM金牌团队🏅️ | 多次AK大厂笔试 | 编程一对一辅导 ✨ 本系列打算持续跟新 秋招笔试题 👏 感谢大家的订阅➕ 和 喜欢💗 和 手里的小花花🌸 ✨ 笔试合集传送们 -> 🧷春秋招笔试合集 本次的题目比较典,…...
【Python知识】m.inplace = inplace 《==》是否执行原地操作
# 如果激活层模块有 inplace 属性,则设置该属性 if hasattr(m, inplace): m.inplace inplace inplace 属性是什么? 在 PyTorch 中,inplace 属性是一个布尔值,用于指示某个操作是否可以以原地(in-place)模式…...
Go语言fmt包中print相关方法
Go语言的fmt包提供了多种打印相关的函数,主要用于在控制台或其他输出目标上格式化并输出数据。下面是一些常用的print相关方法的用途和区别: 1.fmt.Print() 功能: fmt.Print() 将参数的内容按默认格式输出到标准输出(通常是控制台ÿ…...
图片转为pdf怎么弄?亲测有效的8个pdf转换方法安利
图片转PDF怎么弄?在日常的办公生活中,我们经常会需要处理一些文档格式转换难题,图片转成PDF格式就是其中一个,图片转换成PDF格式的话,方便我们传输分享,毕竟现在PDF格式凭借着自身的稳定性和可移植性已经成…...
贪吃蛇(使用QT)
贪吃蛇小游戏 一.项目介绍**[贪吃蛇项目地址](https://gitee.com/strandingzy/QT/tree/zyy/snake)**界面一:游戏大厅界面二:关卡选择界面界面三:游戏界面 二.项目实现2.1 游戏大厅2.2关卡选择界面2.3 游戏房间2.3.1 封装贪吃蛇数据结构2.3.2 …...
【案例40】Apache中mod_proxy模块的使用
NC中间件 应用场景:配置了apache的情况,包括uap集群,配置https等场景下均适用;如果是单机(NC单结点情况不存在问题,则不用配置这项; was环境也不用配置此项。) 解决方案:按如下两…...
简单安装Android Studio并使用
在Windows上安装Android Studio的步骤如下: ### 1. 检查系统要求 确保你的计算机符合Android Studio的系统要求,通常包括: - Windows 8/10/11 - 64位处理器 - 最少4 GB RAM(推荐8 GB) - 最少2 GB可用硬盘空间ÿ…...
在Python中,模块(Module)和包(Package)
在Python中,模块(Module)和包(Package)是组织代码、提高代码复用性、促进代码维护的两种重要机制。它们各自扮演着不同的角色,但又紧密相连,共同构成了Python程序架构的基础。以下将详细阐述Pyt…...
Node版本管理工具
一、nvm 安装 二、常用命令 nvm v //查看nvm 版本号nvm install latest // 下载最新的 node 版本 nvm install 版本号 //安装node对应的版本nvm uninstall 版本号 //卸载对应的版本nvm list // 查看下载的所有版本的nodenvm use 版本号 // 只有引入了才能使用…...
创建并发布NPM模块
创建模块项目 $ mkdir my-npm-package $ cd my-npm-package $ npm init添加模块代码 创建新文件 index.js,内容如下 function helloworld() {console.log(Hello World!); }module.exports helloworld;测试模块 在模块目录(my-npm-package࿰…...
20240807软考架构-------软考31-35答案解析
每日打卡题31-35答案 31、【2015年真题】 难度:一般 对于遗留系统的评价框架如下图所示,那么处于“高水平、低价值”区的遗留系统适合于采用的演化策略为 ( )。 A.淘汰B.继承C.改造D.集成 答案…...
简单实现二叉树(链表实现)
接着上一节。我们接着学习二叉树,学习使用链表建立二叉树时,最好把每个子程序的递归展开图,都画一下 前言 在学习二叉树的基本结构前,需先要创建一颗二叉树,然后才能学习其相关的基本操作,由于现在大家二…...
搭建 Web 群集Haproxy
案例概述 Haproxy 是目前比较流行的一种群集调度工具,同类群集调度工具有很多,如 LVS 和Nginx。相比较而言,LVS 性能最好,但是搭建相对复杂;Nginx 的upstream模块支持群集功能,但是对群集节点健康检查功能不强…...
PDF隐写思路
文章目录 使用工具技术细节小结 使用工具 工具:WPS、010Editor、WbStego 技术细节 步骤: 使用 WPS 查看文件,看是否能打开。 若不能打开则使用 010Editor 查看是否少了头文件等。 正常的 PDF 缺少头文件的 PDF 如果缺少头文件则使用 010…...
Pycharm 常用快捷键
快捷键作用描述Ctrl Space基本的代码自动完成Ctrl Shift Space选择代码自动完成Ctrl D复制当前行或符号Ctrl X剪切当前行或符号Ctrl C复制当前行或符号Ctrl V粘贴剪贴板内容Ctrl Y删除当前行Ctrl A全选当前文件内容Ctrl Z撤销操作Ctrl Shift Z重做操作Ctrl F查找文…...
使用docker在3台服务器上搭建基于redis 6.x的一主两从三台均是哨兵模式
一、环境及版本说明 如果服务器已经安装了docker,则忽略此步骤,如果没有安装,则可以按照一下方式安装: 1. 在线安装(有互联网环境): 请看我这篇文章 传送阵>> 点我查看 2. 离线安装(内网环境):请看我这篇文章 传送阵>> 点我查看 说明:假设每台服务器已…...
day52 ResNet18 CBAM
在深度学习的旅程中,我们不断探索如何提升模型的性能。今天,我将分享我在 ResNet18 模型中插入 CBAM(Convolutional Block Attention Module)模块,并采用分阶段微调策略的实践过程。通过这个过程,我不仅提升…...
【CSS position 属性】static、relative、fixed、absolute 、sticky详细介绍,多层嵌套定位示例
文章目录 ★ position 的五种类型及基本用法 ★ 一、position 属性概述 二、position 的五种类型详解(初学者版) 1. static(默认值) 2. relative(相对定位) 3. absolute(绝对定位) 4. fixed(固定定位) 5. sticky(粘性定位) 三、定位元素的层级关系(z-i…...
跨链模式:多链互操作架构与性能扩展方案
跨链模式:多链互操作架构与性能扩展方案 ——构建下一代区块链互联网的技术基石 一、跨链架构的核心范式演进 1. 分层协议栈:模块化解耦设计 现代跨链系统采用分层协议栈实现灵活扩展(H2Cross架构): 适配层…...
大模型多显卡多服务器并行计算方法与实践指南
一、分布式训练概述 大规模语言模型的训练通常需要分布式计算技术,以解决单机资源不足的问题。分布式训练主要分为两种模式: 数据并行:将数据分片到不同设备,每个设备拥有完整的模型副本 模型并行:将模型分割到不同设备,每个设备处理部分模型计算 现代大模型训练通常结合…...
鱼香ros docker配置镜像报错:https://registry-1.docker.io/v2/
使用鱼香ros一件安装docker时的https://registry-1.docker.io/v2/问题 一键安装指令 wget http://fishros.com/install -O fishros && . fishros出现问题:docker pull 失败 网络不同,需要使用镜像源 按照如下步骤操作 sudo vi /etc/docker/dae…...
ArcGIS Pro制作水平横向图例+多级标注
今天介绍下载ArcGIS Pro中如何设置水平横向图例。 之前我们介绍了ArcGIS的横向图例制作:ArcGIS横向、多列图例、顺序重排、符号居中、批量更改图例符号等等(ArcGIS出图图例8大技巧),那这次我们看看ArcGIS Pro如何更加快捷的操作。…...
Python 包管理器 uv 介绍
Python 包管理器 uv 全面介绍 uv 是由 Astral(热门工具 Ruff 的开发者)推出的下一代高性能 Python 包管理器和构建工具,用 Rust 编写。它旨在解决传统工具(如 pip、virtualenv、pip-tools)的性能瓶颈,同时…...
Linux C语言网络编程详细入门教程:如何一步步实现TCP服务端与客户端通信
文章目录 Linux C语言网络编程详细入门教程:如何一步步实现TCP服务端与客户端通信前言一、网络通信基础概念二、服务端与客户端的完整流程图解三、每一步的详细讲解和代码示例1. 创建Socket(服务端和客户端都要)2. 绑定本地地址和端口&#x…...
QT3D学习笔记——圆台、圆锥
类名作用Qt3DWindow3D渲染窗口容器QEntity场景中的实体(对象或容器)QCamera控制观察视角QPointLight点光源QConeMesh圆锥几何网格QTransform控制实体的位置/旋转/缩放QPhongMaterialPhong光照材质(定义颜色、反光等)QFirstPersonC…...
