【网络编程】几个常用命令:ping / netstat / xargs / pidof / watch




在这里插入图片描述



  • ping:检测网络联通
    • 1. ping 的基本功能
    • 2. ping 的工作原理
    • 3. ping 的常见用法
    • 4. ping 的输出解释
    • 5. ping 的应用场景
    • 6. 注意事项
  • netstat:查看网络状态
    • 1. netstat 的基本功能
    • 2. 常见用法
    • 3. 示例
    • 4. 输出字段解释
    • 5. netstat 的替代工具
    • 6. 注意事项
  • xargs:将数据转换为其他命令的命令行参数
    • 1. xargs 的基本功能
    • 2. 常见用法
    • 3. 示例
  • pidof:根据名字查找并返回进程PID
    • 1. pidof 的基本功能
    • 2. 常见用法
    • 3. 示例
    • 4. 输出解释
    • 5. 使用场景
    • 6. 注意事项
  • watch:动态刷新的数字监控
    • 1. watch 的基本功能
    • 2. 常见用法
    • 3. 示例
    • 4. 输出解释
    • 5. 使用场景
    • 6. 注意事项



ping:检测网络联通

ping 是一种常用的网络诊断工具,用于测试主机之间的连通性以及测量网络延迟。通过发送 ICMP(Internet Control Message Protocol)回声请求(Echo Request)消息到目标主机,并等待其返回 ICMP 回声应答(Echo Reply),可以判断目标主机是否可达,并评估网络性能。

以下是关于 ping 命令的详细讲解:




1. ping 的基本功能

  • 测试连通性:验证本地主机与目标主机之间的网络连接是否正常。
  • 测量延迟:计算从发送请求到接收响应的时间(通常以毫秒为单位),反映网络的速度和稳定性。
  • 检测丢包率:统计在一定时间内发送的请求中有多少未收到响应,从而判断网络质量。



2. ping 的工作原理

  1. 发送 ICMP 请求

    • 本地主机向目标主机发送一个 ICMP Echo Request 消息。
    • 这个消息包含一个唯一的标识符和序列号,用于区分不同的请求。
  2. 接收 ICMP 应答

    • 如果目标主机正常运行且网络畅通,它会返回一个 ICMP Echo Reply 消息。
    • 本地主机会记录从发送请求到接收应答的时间差,即往返时间(RTT,Round-Trip Time)。
  3. 统计结果

    • 根据多次请求的结果,计算平均延迟、最大延迟、最小延迟以及丢包率。



3. ping 的常见用法

(1) 基本语法
ping [选项] 目标地址
  • 目标地址:可以是域名(如 www.example.com)或IP地址(如 192.168.1.1)。
    可以输入自己服务器的域名或虚拟机的IP地址


(2) 常见选项
选项描述
-c <次数>指定发送的ICMP请求次数(例如:ping -c 4 www.example.com)。
-i <间隔>设置两次请求之间的时间间隔(秒)。
-t <TTL>设置数据包的生存时间(Time To Live,TTL)。
-s <大小>设置发送的数据包大小(字节)。
-W <超时>设置等待响应的超时时间(秒)。


(3) 示例
  • 发送4次请求

    ping -c 4 www.example.com
    
  • 指定数据包大小为1024字节

    ping -s 1024 www.example.com
    
  • 设置每次请求间隔为2秒

    ping -i 2 www.example.com
    



4. ping 的输出解释

以下是一个典型的 ping 输出示例:

PING www.example.com (93.184.216.34): 56 data bytes
64 bytes from 93.184.216.34: icmp_seq=0 ttl=56 time=12.3 ms
64 bytes from 93.184.216.34: icmp_seq=1 ttl=56 time=11.8 ms
64 bytes from 93.184.216.34: icmp_seq=2 ttl=56 time=12.1 ms
64 bytes from 93.184.216.34: icmp_seq=3 ttl=56 time=11.9 ms--- www.example.com ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3003ms
rtt min/avg/max/mdev = 11.800/12.025/12.300/0.200 ms

字段说明
  • PING

    • 显示目标地址及其解析后的IP地址。
    • 数据包大小默认为56字节(加上ICMP头部后总共64字节)。
  • 每次请求的响应

    • 64 bytes:表示接收到的回显应答数据包大小。
    • icmp_seq=<序号>:表示该数据包的序列号。
    • ttl=<值>:表示数据包的生存时间(TTL,Time To Live),反映了路由跳数。
    • time=<值>:表示往返时间(RTT,Round-Trip Time),单位为毫秒。
  • 统计信息

    • packets transmitted:发送的总数据包数。
    • received:接收到的总数据包数。
    • packet loss:丢包率(百分比)。
    • time:整个测试过程的持续时间。
    • rtt min/avg/max/mdev:往返时间的最小值、平均值、最大值以及标准偏差。



5. ping 的应用场景

(1) 测试网络连通性
  • 使用 ping 可以快速检查本地主机与目标主机之间的网络是否连通。
  • 如果无法收到任何响应,可能是因为目标主机不可达、网络中断或目标主机禁用了ICMP响应。
(2) 测量网络延迟
  • 通过观察 ping 输出中的 time 值,可以评估网络的速度和稳定性。
  • 较低的延迟通常意味着更好的网络性能。
(3) 检测丢包率
  • 如果部分请求没有收到响应,可能是网络拥塞或不稳定。
  • 高丢包率可能表明网络质量较差。
(4) 调试网络问题
  • 结合其他工具(如 traceroutemtr),可以定位网络故障的具体位置。



6. 注意事项

(1) 目标主机可能禁用ICMP
  • 某些主机或防火墙可能会禁用ICMP协议,导致即使网络正常也无法收到响应。
(2) 网络延迟的影响因素
  • 网络延迟可能受到多种因素的影响,包括物理距离、路由器数量、带宽限制等。
(3) 数据包大小的影响
  • 发送较大的数据包可能会暴露网络中的带宽瓶颈或MTU(Maximum Transmission Unit)问题。
(4) 不同平台的实现差异
  • Windows 和 Linux 的 ping 命令在默认行为上可能略有不同(例如,默认数据包大小)。



netstat:查看网络状态

我们在写一些网络服务时,如写 udp Server / tcp Server ,我们有时需要查看这些网络服务是否启动以及其他状态信息,如果直接使用 ps 命令,只能查看到一些偏向进程方面的,因此我们推荐 netstat

netstat 是一个用于显示网络连接、路由表、接口统计信息、伪装连接和多播成员的命令行工具。它是网络管理员和开发人员常用的工具之一,可以帮助诊断网络问题、监控网络状态以及分析系统上的活动连接。

以下是关于 netstat 的详细介绍:



1. netstat 的基本功能

netstat 提供了以下主要功能:

  • 显示活动的网络连接:列出当前系统的TCP/UDP连接。
  • 显示路由表信息:查看系统的IP路由表。
  • 显示接口统计信息:显示网络接口的流量统计信息。
  • 显示监听端口:列出正在监听的端口及其对应的服务或进程。
  • 显示网络协议统计信息:提供TCP、UDP、ICMP等协议的统计数据。

在这里插入图片描述




2. 常见用法

(1) 基本语法
netstat [选项]
(2) 常见选项

注意:在使用时,这些选项的前后顺序无所谓,没有规定

选项描述
-aall,显示所有连接和侦听端口(包括TCP和UDP)。
-ttcp,仅显示TCP连接。
-uudp,仅显示UDP连接。
-nnumber,以数字形式显示地址和端口号(不进行DNS解析)。
-l仅显示处于监听状态的连接。
-pprocess,显示与每个连接关联的进程ID(需要root权限)。
-r显示内核路由表。
-i显示网络接口的统计信息。
-s显示每个协议的统计信息(如TCP、UDP等)。



2. 常见用法

(1) 显示所有连接和侦听端口
netstat -a
  • 输出中会包含所有的TCP和UDP连接,包括已建立的连接和正在监听的端口。
(2) 显示所有TCP连接
netstat -at
  • 只显示TCP协议相关的连接。
(3) 显示所有UDP连接
netstat -au
  • 只显示UDP协议相关的连接。
(4) 显示监听端口
netstat -ln
  • 使用 -l 选项只显示处于监听状态的端口,-n 选项避免DNS解析,加快输出速度。
(5) 显示与进程关联的连接
sudo netstat -ntp
  • -n:以数字形式显示地址和端口号。
  • -t:仅显示TCP连接。
  • -p:显示与每个连接关联的进程ID和名称。
  • 需要使用 sudo 提升权限,因为普通用户无法访问某些进程信息。
(6) 显示路由表
netstat -r
  • 输出系统的IP路由表,类似于 routeip route 命令。
(7) 显示网络接口统计信息
netstat -i
  • 列出所有网络接口的流量统计信息,包括接收和发送的数据包数量、错误数等。
(8) 显示协议统计信息
netstat -s
  • 提供TCP、UDP、ICMP等协议的详细统计信息,例如已建立的连接数、丢弃的数据包数等。



3. 示例

以下是一个典型的 netstat 输出示例:

Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      1234/sshd
tcp        0      0 127.0.0.1:631           0.0.0.0:*               LISTEN      1235/cupsd
udp        0      0 0.0.0.0:68              0.0.0.0:*                           1236/dhclient


4. 输出字段解释

  • Proto:协议类型(TCP或UDP)。
  • Recv-Q:接收队列中的数据包数量。
  • Send-Q:发送队列中的数据包数量。
  • Local Address:本地地址和端口。
  • Foreign Address:远程地址和端口。
  • State:连接状态(仅适用于TCP,例如 LISTENESTABLISHED 等)。
  • PID/Program name:与该连接关联的进程ID和程序名称(需使用 -p 选项)。



5. netstat 的替代工具

在现代Linux系统中,netstat 已逐渐被更高效的工具(如 ssip)取代:

  • ss:功能类似 netstat,但性能更高,推荐使用。
  • ip:用于管理和显示网络接口、路由表等信息。

例如,使用 ss 查看监听端口:

ss -tnlp



6. 注意事项

(1) 权限问题
  • 某些选项(如 -p)需要 root 权限才能查看进程信息。

    比如下图,有些条目缺失了一些信息,只有我们自己启动的 ./server

    在这里插入图片描述

  • 如果没有权限,可以尝试使用 sudo 提升权限。

    如下图,使用 sudo 提权后,所有信息都展示出来了

    在这里插入图片描述

(2) 性能问题
  • 在高并发环境下,netstat 的性能可能不如 ss,因为它需要读取大量的内核数据。
(3) 替代工具
  • 在较新的 Linux 发行版中,netstat 可能已被废弃或不再默认安装。可以使用 ssip 命令作为替代。



xargs:将数据转换为其他命令的命令行参数

xargs 是一个功能强大的命令行工具,用于从标准输入(stdin)读取数据,并将其作为参数传递给其他命令执行。它可以帮助用户将管道或文件中的数据转换为命令行参数,从而实现批量处理任务。

以下是关于 xargs 的详细讲解:


1. xargs 的基本功能

  • 从标准输入读取数据xargs 从标准输入中读取数据,通常是通过管道或其他命令的输出。
  • 构建命令行参数:将读取到的数据转换为命令行参数,并传递给指定的命令。
  • 批量执行命令:支持对多个输入项逐一或分批执行命令。



2. 常见用法

(1) 基本语法
command | xargs [选项] [命令]
  • command:生成输入数据的命令。
  • xargs:将输入数据转换为命令行参数。
  • [选项]:控制 xargs 的行为。
  • [命令]:接收参数并执行的命令。



3. 示例

(1) 基本用法
echo "file1 file2 file3" | xargs ls
  • file1 file2 file3 作为参数传递给 ls 命令,等价于:

    ls file1 file2 file3
    



pidof:根据名字查找并返回进程PID

pidof 是一个用于查找正在运行的进程的 PID(Process ID)的命令行工具。它根据指定的进程名称返回与该名称匹配的进程的 PID 列表。pidof 是系统管理员和开发人员常用的工具之一,尤其在需要动态获取某个服务或程序的 PID 时非常方便。

以下是关于 pidof 的详细讲解:


1. pidof 的基本功能

  • 查找进程 ID:根据进程名称返回对应的 PID。
  • 支持多个匹配项:如果存在多个同名进程,pidof 会返回所有匹配的 PID。
  • 简单易用:语法简单,适合脚本中使用。



2. 常见用法

(1) 基本语法
pidof [选项] 进程名称
(2) 常见选项
选项描述
-s只返回一个 PID(即使有多个匹配的进程)。
-x匹配脚本或可执行文件(不仅限于二进制程序)。
-o PID,...排除指定的 PID 或特殊符号(如 $$ 表示当前 shell 的 PID)。



3. 示例

(1) 查找特定进程的 PID
pidof sshd
  • 如果 sshd 正在运行,输出可能是:

    1234 1235
    
  • 这表示有两个 sshd 进程正在运行,其 PID 分别为 12341235

(2) 只返回一个 PID
pidof -s sshd
  • 即使有多个 sshd 进程,也只返回其中一个 PID,例如:

    1234
    
(3) 匹配脚本或可执行文件
pidof -x myscript.sh
  • 如果 myscript.sh 是一个正在运行的脚本,pidof 会返回其 PID。
(4) 排除特定 PID
pidof -o $$ bash
  • $$ 表示当前 shell 的 PID。此命令会列出所有正在运行的 bash 进程的 PID,但排除当前 shell 的 PID。



4. 输出解释

pidof 的输出是一个由空格分隔的 PID 列表。如果没有找到匹配的进程,则不会有任何输出。

例如:

$ pidof nginx
1234 1235 1236

这表示有三个 nginx 进程正在运行,其 PID 分别为 123412351236




5. 使用场景

(1) 动态获取 PID

在编写脚本时,可以使用 pidof 获取某个服务的 PID 并进行进一步操作。例如:

PID=$(pidof mysqld)
if [ -n "$PID" ]; thenecho "MySQL is running with PID $PID"
elseecho "MySQL is not running"
fi
(2) 结合其他工具

可以将 pidof 的输出与其他工具结合使用。例如:

  • 使用 kill 发送信号:有两种写法

    // 方法一:
    kill $(pidof nginx)// 方法二: 通过管道
    pidof nginx | xargs kill -9
    
  • 使用 ps 获取更多进程信息:

    ps -p $(pidof sshd)
    
(3) 监控进程状态

通过定期检查某个进程是否存在,可以实现简单的进程监控功能。




6. 注意事项

**(1) 进程名称匹配 **
  • pidof 根据进程名称进行匹配,因此可能会出现误匹配的情况。例如,pidof http 可能会匹配到 httpd 或其他包含 http 的进程。
  • 如果需要更精确的匹配,建议结合 pgrepps 使用。
(2) 权限问题
  • 如果当前用户没有权限访问某些进程的信息,pidof 可能无法返回这些进程的 PID。
(3) 替代工具
  • 在某些情况下,pgrep 是一个更强大的替代工具,因为它可以根据更多的条件(如用户、命令行参数等)进行过滤。



watch:动态刷新的数字监控

watch 是一个非常实用的命令行工具,用于定期执行其他命令并将输出显示在终端中。它可以帮助用户实时监控系统状态、进程运行情况或其他动态变化的信息。通过 watch,你可以以固定的时间间隔重复执行某个命令,并观察其结果的变化。

以下是关于 watch 的详细讲解:




1. watch 的基本功能

  • 定期执行命令:按照指定的时间间隔(默认为2秒)重复执行某个命令。
  • 高亮变化:可以高亮显示输出中发生变化的部分,便于快速发现差异。
  • 全屏显示:将命令的输出完整地显示在终端中,类似于一个动态更新的窗口。



2. 常见用法

(1) 基本语法
watch [选项] 命令
(2) 常见选项
选项描述
-n <秒>设置刷新时间间隔(默认为2秒)。
-d--difference高亮显示输出中的变化部分。
-t--no-title禁用顶部标题栏(显示命令和时间信息)。
-b--beep如果输出发生变化,则发出蜂鸣声。
-g--chgexit当输出发生变化时立即退出。



3. 示例

(1) 默认使用
watch df -h
  • 每隔2秒执行一次 df -h 命令,显示磁盘使用情况。
(2) 自定义刷新时间
watch -n 5 free -m
  • 每隔5秒执行一次 free -m 命令,显示内存使用情况。
(3) 高亮显示变化
watch -d uptime
  • 每隔2秒执行一次 uptime 命令,并高亮显示输出中发生变化的部分。
(4) 禁用标题栏
watch -t date
  • 每隔2秒执行一次 date 命令,并禁用顶部标题栏。
(5) 输出变化时发出蜂鸣声
watch -b ls
  • 每隔2秒执行一次 ls 命令,如果目录内容发生变化,则发出蜂鸣声。
(6) 输出变化时立即退出
watch -g ps aux | grep sshd
  • 每隔2秒检查是否有 sshd 进程,如果输出发生变化(例如进程启动或停止),则立即退出。



4. 输出解释

watch 的输出通常包括以下部分:

  • 顶部标题栏:显示命令、当前时间以及刷新间隔。
  • 命令输出:每次执行命令的输出结果。
  • 高亮部分:如果启用了 -d 选项,输出中发生变化的部分会被高亮显示。

例如:

Every 2.0s: df -h                                                                                         Tue Feb 28 10:00:00 2023Filesystem      Size  Used Avail Use% Mounted on
udev            7.8G     0  7.8G   0% /dev
tmpfs           1.6G  2.1M  1.6G   1% /run
/dev/sda1        50G   12G   36G  25% /
...



5. 使用场景

(1) 监控系统资源
  • 使用 watch 可以方便地监控系统资源的使用情况,例如:
    • 内存使用:watch free -m
    • CPU负载:watch top
    • 磁盘空间:watch df -h
(2) 监控网络连接
  • 查看活动的网络连接:watch netstat -tuln
  • 查看路由表变化:watch route -n
(3) 监控文件或目录变化
  • 查看某个目录的内容变化:watch ls -l /path/to/directory
  • 查看日志文件的变化:watch tail -n 10 /var/log/syslog
(4) 监控服务状态
  • 查看某个服务的状态:watch systemctl status sshd
  • 查看某个端口的监听状态:watch lsof -i :80



6. 注意事项

(1) 终止 watch
  • 按下 Ctrl+C 可以终止 watch 的运行。
(2) 命令输出的限制
  • watch 的输出会根据终端窗口的大小自动调整,因此不适合处理非常大的输出。
(3) 高亮功能的限制
  • -d 选项只能高亮显示文本内容的变化,无法检测到格式或颜色的变化。
(4) 替代工具
  • 如果需要更复杂的监控功能,可以考虑使用 while 循环结合 sleep,例如:

    while true; do clear; df -h; sleep 5; done
    

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/25477.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

AI 赋能教育:智能家教与个性化学习助手的革命性设计与实践

网罗开发 &#xff08;小红书、快手、视频号同名&#xff09; 大家好&#xff0c;我是 展菲&#xff0c;目前在上市企业从事人工智能项目研发管理工作&#xff0c;平时热衷于分享各种编程领域的软硬技能知识以及前沿技术&#xff0c;包括iOS、前端、Harmony OS、Java、Python等…

水利工程安全包括哪几个方面

水利工程安全培训的内容主要包括以下几个方面&#xff1a; 基础知识和技能培训 &#xff1a; 法律法规 &#xff1a;学习水利工程相关的安全生产法律法规&#xff0c;了解安全生产标准及规范。 事故案例 &#xff1a;通过分析事故案例&#xff0c;了解事故原因和教训&#x…

【HarmonyOS Next】鸿蒙应用折叠屏设备适配方案

【HarmonyOS Next】鸿蒙应用折叠屏设备适配方案 一、前言 目前应用上架华为AGC平台&#xff0c;都会被要求适配折叠屏设备。目前华为系列的折叠屏手机&#xff0c;有华为 Mate系列&#xff08;左右折叠&#xff0c;华为 Mate XT三折叠&#xff09;&#xff0c;华为Pocket 系列…

数据驱动未来!天合光能与永洪科技携手开启数字化新篇章

在信息化时代的今天&#xff0c;企业间的竞争早就超越了传统产品与服务的范畴&#xff0c;新的核心竞争力即——数据处理能力和信息技术的应用。作为数据技术领域的领军者&#xff0c;永洪科技凭借其深厚的技术积累和丰富的行业经验&#xff0c;成功助力天合光能实现数字化升级…

Metal学习笔记八:纹理

到目前为止&#xff0c;您已经学习了如何使用片段函数和着色器为模型添加颜色和细节。另一种选择是使用图像纹理&#xff0c;您将在本章中学习如何操作。更具体地说&#xff0c;您将了解&#xff1a; • UV 坐标&#xff1a;如何展开网格&#xff0c;以便可以对其应用纹理。 •…

SpringSecurity的核心过滤器-CsrfFilter

Spring Security除了认证授权外功能外,还提供了安全防护功能。本文我们来介绍下SpringSecurity中是如何阻止CSRF攻击的。 一、什么是CSRF攻击 跨站请求伪造(英语:Cross-site request forgery),也被称为 one-click attack 或者 session riding,通常缩写为 CSRF 或者 XSRF…

《当齐天大圣踏入3A游戏世界:黑神话·悟空的破壁传奇》:此文为AI自动生成

国产 3A 游戏的破晓之光 2024 年 8 月 20 日,这一天注定被铭记在中国游戏发展的史册上。国产首款 3A 游戏《黑神话・悟空》震撼上线,犹如一颗重磅炸弹,在全球游戏市场掀起了惊涛骇浪。仅仅上线 3 小时,其同时在线人数便突破了 140 万,一举打破 Steam 纯单机游戏最高在线纪…

rust 前端npm依赖工具rsup升级日志

rsup是使用 rust 编写的一个前端 npm 依赖包管理工具&#xff0c;可以获取到项目中依赖包的最新版本信息&#xff0c;并通过 web 服务的形式提供查看、升级操作等一一系列操作。 在前一篇文章中&#xff0c;记录初始的功能设计&#xff0c;自己的想法实现过程。在自己的使用过…

【备赛】点亮LED

LED部分的原理图 led前面有锁存器&#xff0c;这是为了防止led会受到lcd的干扰&#xff08;lcd也需要用到这些引脚&#xff09;。 每次想要对led操作&#xff0c;就需要先打开锁存器&#xff0c;再执行操作&#xff0c;最后关闭锁存器。 这里需要注意的是&#xff0c;引脚配置…

CSS 使用white-space属性换行

一、white-space属性的常见值 * 原本格式&#xff1a; 1、white-space:normal 默认值&#xff0c;空格和换行符会被忽略过滤掉&#xff1b;宽度不够时文本会自动换行 * 宽度足够时&#xff0c;normal 处理后的格式 * 宽度不够时&#xff0c; normal 处理后的格式 2、white-spa…

electron-builder打包时github包下载失败【解决办法】

各位朋友们&#xff0c;在使用electron开发时&#xff0c;选择了electron-builder作为编译打包工具时&#xff0c;是否经常遇到无法从github上下载依赖包问题&#xff0c;如下报错&#xff1a; Get "https://github.com/electron/electron/releases/download/v6.1.12/ele…

【WSL2】 Ubuntu20.04 GUI图形化界面 VcXsrv ROS noetic Vscode 主机代理 配置

【WSL2】 Ubuntu20.04 GUI图形化界面 VcXsrv ROS noetic Vscode 主机代理 配置 前言整体思路安装 WSL2Windows 环境升级为 WIN11 专业版启用window子系统及虚拟化 安装WSL2通过 Windows 命令提示符安装 WSL安装所需的 Linux 发行版&#xff08;如 Ubuntu 20.04&#xff09;查看…

2025学年安徽省职业院校技能大赛 “信息安全管理与评估”赛项 比赛样题任务书

2024-2025 学年广东省职业院校技能大赛 “信息安全管理与评估”赛项 技能测试试卷&#xff08;五&#xff09; 第一部分&#xff1a;网络平台搭建与设备安全防护任务书第二部分&#xff1a;网络安全事件响应、数字取证调查、应用程序安全任务书任务1 &#xff1a;内存取证&…

数据库导出

MySQL数据库 使用命令行导出 导出整个数据库&#xff1a;在命令行中输入mysqldump -u用户名 -p密码 数据库名 > 导出文件路径/文件名.sql。例如mysqldump -uroot -p123456 mydb > /home/user/mydb_backup.sql&#xff0c;回车后输入密码即可将名为mydb的数据库导出为SQL…

OpenCV给图像添加噪声

操作系统&#xff1a;ubuntu22.04 OpenCV版本&#xff1a;OpenCV4.9 IDE:Visual Studio Code 编程语言&#xff1a;C11 算法描述 如果你已经有了一张干净的图像&#xff0c;并希望通过编程方式向其添加噪声&#xff0c;可以使用 OpenCV 来实现这一点。以下是一个简单的例子&a…

OSPF BIT 类型说明

注&#xff1a;本文为 “OSPF BIT 类型 | LSA 类型 ” 相关文章合辑。 机翻&#xff0c;未校。 15 OSPF BIT Types Explained 15 种 OSPF BIT 类型说明 Rashmi Bhardwaj Distribution of routing information within a single autonomous system in larger networks is per…

Linux网络之传输层协议(UDP,TCP协议)

目录 重新认识端口号 端口号划分 netstat pidof UDP协议 UDP的特点 面向数据报 UDP的缓冲区 全双工和半双工 TCP协议 TCP的特点 TCP报头分析 源端口&#xff0c;目标端口&#xff0c;数据偏移(报文首部长度) 序号 确认号 窗口 6个标志位 ACK SYN …

Spring Boot 热部署

文章目录 一&#xff0c;Spring Boot热部署概述二&#xff0c;对项目HelloWorld01进行热部署 1、添加开发工具依赖2、热部署配置3、热部署测试 一&#xff0c;Spring Boot热部署概述 在开发过程中&#xff0c;通常会对一段业务代码不断地修改测试&#xff0c;在修改之后往往…

【前端基础】Day 3 CSS-2

目录 1. Emmet语法 1.1 快速生成HTML结构语法 1.2 快速生成CSS样式语法 2. CSS的复合选择器 2.1 后代选择器 2.2 子选择器 2.3 并集选择器 2.4 伪类选择器 2.4.1 链接伪类选择器 2.4.2 focus伪类选择器 2.5 复合选择器总结 3. CSS的元素显示模式 3.1 什么是元素显示…

使用vscode导出Markdown的PDF无法显示数学公式的问题

我的硬件环境是M2的MacBook air&#xff0c;在vscode中使用了Markdown PDF来导出md文件对应的PDF。但不管导出html还是PDF文件&#xff0c;数学公式都是显示的源代码。 我看了许多教程&#xff0c;给的是这个方法&#xff1a;在md文件对应的html文件中加上以下代码&#xff1a…