当前位置: 首页 > news >正文

信创系统资产清单采集脚本:主机名+IP+MAC 一键生成 CSV

原文链接:信创系统资产清单采集脚本:主机名+IP+MAC 一键生成 CSV

Hello,大家好啊!今天给大家带来一篇在信创终端操作系统上自动批量采集主机名、IP 和 MAC 并导出为 CSV 表格的实战文章!本方案使用 sshpass 和 Bash 脚本配合,支持从外部 IP 列表和密码文件中读取内容,轻松实现批量自动采集,是信创设备台账登记、资产管理、批量部署前信息归档的利器!欢迎大家点赞、转发、点个在看!

场景介绍

日常运维工作中,尤其是在以下场景下常常需要批量采集主机信息:

信创设备批量上架后登记 IP、MAC、主机名

网络规划前快速收集节点信息

离线环境中准备资产台账

自动化部署前环境清查

如果一个个登录再 copy 太低效,这时候一套 “免登录 + 自动生成 CSV” 的脚本就很有必要!

1.准备设备IP列表

pdsyw@pdsyw-PC:~/Desktop$ vim pdsyw_ip.txt
​
pdsyw@pdsyw-PC:~/Desktop$ cat pdsyw_ip.txt 
​
192.168.80.44

用 vim 创建并编辑了一个名为 pdsyw_ip.txt 的文件,内容是目标设备的 IP 地址,每行一个。此文件用于后续脚本读取目标设备列表。

img

2.准备对应密码

pdsyw@pdsyw-PC:~/Desktop$ vim pdsyw_passwd.txt
​
pdsyw@pdsyw-PC:~/Desktop$ cat pdsyw_passwd.txt
​
1 

创建一个名为 pdsyw_passwd.txt 的文件,里面存放对应设备的登录密码。支持:

所有设备共用同一个密码(如每行内容都为 1)。

每台设备一个密码(一一对应 pdsyw_ip.txt 中的 IP)。

脚本通过索引一一读取对应的密码。

img

3.编写批量采集脚本

pdsyw@pdsyw-PC:~/Desktop$ vim generate_host_list.sh
​
pdsyw@pdsyw-PC:~/Desktop$ cat generate_host_list.sh
​
#!/bin/bash
​​
output="host_list.csv"
​
echo "主机名,IP地址,MAC地址" > "$output"
​​
mapfile -t ip_list < pdsyw_ip.txt
​
mapfile -t pw_list < pdsyw_passwd.txt
​​
if [ "${#ip_list[@]}" -ne "${#pw_list[@]}" ]; then
​echo "错误:IP 和密码数量不一致"
​exit 1
​
fi
​​
for i in "${!ip_list[@]}"; do
​ip="${ip_list[$i]}"
​password="${pw_list[$i]}"
​​echo "正在采集:$ip"
​​sshpass -p "$password" ssh -o ConnectTimeout=5 -o StrictHostKeyChecking=no pdsyw@"$ip" '
​h=$(hostname)
​ipaddr=$(ip a | grep "inet " | grep -v "127.0.0.1" | awk "{print \$2}" | cut -d/ -f1 | head -n1)
​mac=$(ip link | awk "/ether/ {print \$2}" | head -n1)
​echo "$h,$ipaddr,$mac"
​' >> "$output"
​
done
​​
echo "所有采集完成,结果保存在 $output"

读取 IP 和密码,远程登录每台主机,采集主机名、IP、MAC 地址,并输出到 host_list.csv 文件中。关键步骤说明:

mapfile -t ip_list < pdsyw_ip.txt
​
mapfile -t pw_list < pdsyw_passwd.txt

将 IP 列表和密码列表分别读入数组。

if [ "${#ip_list[@]}" -ne "${#pw_list[@]}" ]; then
​echo "错误:IP 和密码数量不一致"
​exit 1
​
fi

校验 IP 与密码数量一致,防止数组越界。

sshpass -p "$password" ssh -o ConnectTimeout=5 -o StrictHostKeyChecking=no pdsyw@"$ip" '
​h=$(hostname)
​ipaddr=$(ip a | grep "inet " | grep -v "127.0.0.1" | awk "{print \$2}" | cut -d/ -f1 | head -n1)
​mac=$(ip link | awk "/ether/ {print \$2}" | head -n1)
​echo "$h,$ipaddr,$mac"
​
' >> "$output"

利用 sshpass + ssh 无交互登录远程主机,提取主机名(hostname)、IP 地址、MAC 地址。其中用户pdsyw可以根据实际情况调整。awk "{print $2}" 使用 \ 转义是为了在嵌套脚本中正确传递。

echo "主机名,IP地址,MAC地址" > "$output"

创建 CSV 文件,写入表头。

img

4.安装环境依赖

pdsyw@pdsyw-PC:~/Desktop$ sudo apt install sshpass -y

sshpass 是一个支持非交互式 SSH 密码输入的工具。它允许你用密码方式批量远程登录(适用于没有设置 SSH 密钥登录的设备)。确保主控终端可 SSH 到目标设备。

img

5.执行效果预览

pdsyw@pdsyw-PC:~/Desktop$ bash generate_host_list.sh
​
正在采集:192.168.80.44
​
Warning: Permanently added '192.168.80.44' (ECDSA) to the list of known hosts.
​
所有采集完成,结果保存在 host_list.csv

执行采集脚本,控制台实时输出当前采集的设备 IP。首次连接会自动将目标 IP 加入 known_hosts 列表。

img

6.输出文件

pdsyw@pdsyw-PC:~/Desktop$ cat host_list.csv 
​
主机名,IP地址,MAC地址
​
pdsyw-PC,192.168.80.44,00:0c:29:cf:46:a3

采集完成后,输出的文件内容是一个标准的 CSV 格式,便于后续导入 Excel 或数据库处理。

img

img

7、使用建议

*应用场景**建议操作*
台账登记使用WPS 表格打开 .csv 直接导入系统平台
网段清查一次性采集全网段设备,过滤活跃主机
离线备份将采集脚本与 .csv 一并打包归档
自动部署前检查结合设备名 / IP 反查对照配置表

通过这篇文章,你掌握了如何在信创终端环境中,使用脚本结合 SSH 免交互方式批量获取设备主机名、IP 地址和 MAC 地址,并输出为标准的 .csv 表格,极大提高了信息采集效率,也为后续批量运维打下良好基础。如果你觉得这篇文章实用,欢迎点赞、转发、收藏并点个在看,我们下次再见!

相关文章:

信创系统资产清单采集脚本:主机名+IP+MAC 一键生成 CSV

原文链接&#xff1a;信创系统资产清单采集脚本&#xff1a;主机名IPMAC 一键生成 CSV Hello&#xff0c;大家好啊&#xff01;今天给大家带来一篇在信创终端操作系统上自动批量采集主机名、IP 和 MAC 并导出为 CSV 表格的实战文章&#xff01;本方案使用 sshpass 和 Bash 脚本…...

Python爬虫(8)Python数据存储实战:JSON文件读写与复杂结构化数据处理指南

目录 一、背景与核心价值‌二、JSON基础与核心应用场景‌2.1 JSON数据结构规则‌2.2 典型应用场景 三、Python json模块核心操作‌‌3.1 基础读写&#xff1a;dump()与load()‌3.2 字符串与对象的转换&#xff1a;dumps()与loads()‌ 四、处理复杂数据类型‌4.1 日期时间对象‌…...

OpenStack私有云详细介绍

引言 企业部署云计算服务的模式有公有云、私有云、混合云三大类。 公有云是云计算服务提供商为公众提供服务的云计算平台&#xff0c;理论上任何人都可以通过授权接入该平台。 私有云是云计算服务提供商为企业在其内部建设的专有云计算系统&#xff0c;私有云系统存在于企业防火…...

6.图的OJ题(1-10,未完)

310. 最小高度树 - 力扣&#xff08;LeetCode&#xff09; 分析&#xff1a;n个顶点的无环无向连通图&#xff0c;有n-1条边。 1&#xff09;任意两点有且只有一条路径 2&#xff09;路径最远的两顶点必为叶子节点 且根据证明可以得出以下两个性质&#xff1a; 1.最小高度树的根…...

【愚公系列】《Manus极简入门》005-DeepSeek与Manus的创新之处

&#x1f31f;【技术大咖愚公搬代码&#xff1a;全栈专家的成长之路&#xff0c;你关注的宝藏博主在这里&#xff01;】&#x1f31f; &#x1f4e3;开发者圈持续输出高质量干货的"愚公精神"践行者——全网百万开发者都在追更的顶级技术博主&#xff01; &#x1f…...

犬面部检测数据集VOC+YOLO格式987张1类别

数据集格式&#xff1a;Pascal VOC格式YOLO格式(不包含分割路径的txt文件&#xff0c;仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件) 图片数量(jpg文件个数)&#xff1a;987 标注数量(xml文件个数)&#xff1a;987 标注数量(txt文件个数)&#xff1a;987 标注…...

深入解析MyBatis-Plus中的lambdaUpdate与lambdaQuery

一、引言 在现代Java持久层开发中&#xff0c;MyBatis-Plus作为MyBatis的增强工具&#xff0c;提供了许多便捷的功能&#xff0c;其中lambdaUpdate和lambdaQuery是基于Lambda表达式的两种强大操作方式。它们不仅提高了代码的可读性&#xff0c;还减少了SQL编写错误&#xff0c…...

OneNet云平台

一、基础信息 设备名称&#xff1a;test1 设备密钥&#xff1a;N1drd3BZc0h0WDNWaXRtdjlFbjUxTHFhTGtWcW1VWjQ 产品ID&#xff1a;EcO4iSzv5b url&#xff1a; 端口号&#xff1a;1883 password&#xff1a;version2018-10-31&resproducts%2FEcO4iSzv5b%2Fdevices%2Fte…...

使用Nestjs, Bun 和 NCC 打造高效的 Node.js 应用构建流程

使用Nestjs, Bun 和 NCC 打造高效的 Node.js 应用构建流程 在现代 Node.js 应用开发中&#xff0c;构建和打包流程的效率对项目的迭代速度和部署效果有着重要影响。本文将介绍如何结合 Nestjs ,Bun 和 NCC 工具&#xff0c;构建出高效且优化的 Node.js 应用。 一、项目构建的…...

迷你世界UGC3.0脚本Wiki组件事件管理

迷你世界UGC3.0脚本Wiki Menu On this page Sidebar Navigation 快速入门 首页 组件介绍 MOD、组件介绍 什么是Lua编程 开发者常见问题 组件介绍 组件函数 组件属性 全局函数 对象介绍 触发器脚本交互 脚本方法 二维表介绍 组件说明 事件 触发器事件管理 组件事件管理 函数库 服…...

多层pcb批量工厂哪家好?

在电子产业高速发展的当下&#xff0c;多层PCB作为硬件设备的核心载体&#xff0c;其品质与交付效率直接影响终端产品的市场竞争力。面对从消费电子到航空航天等领域的多元化需求&#xff0c;选择一家技术过硬、服务灵活且具备规模化生产能力的工厂至关重要。经过对当前行业动态…...

【MQ篇】RabbitMQ之死信交换机!

目录 引言&#xff1a;消息不死&#xff0c;只是变成死信&#xff1f;初识死信交换机&#xff1a;死信从哪来&#xff1f;DLX 干啥的&#xff1f;什么是死信&#xff1f;什么是死信交换机 (DLX)&#xff1f;死信的旅程&#xff1a;如何从队列到达 DLX 并被路由&#xff1f;&…...

CI/CD解决方案TeamCity在游戏开发中的应用价值与优势分析

TeamCity是用于游戏开发的最流行的CI/CD工具之一。从独立开发者到3A工作室和游戏发行商&#xff0c;各种规模的公司都在使用。无论您在制作流程中使用何种工具&#xff0c;TeamCity都支持您为任何的工作流程设置全面的构建-测试-发布管道。 TeamCity如何增强您的游戏开发工作流…...

泰迪杯实战案例超深度解析:运输车辆安全驾驶行为分析与安全评价系统设计

(第七届泰迪杯数据挖掘挑战赛C题特等奖案例解析) 一、案例背景与目标 1.1 应用场景与痛点 在道路运输行业,不良驾驶行为(如急加速、急减速、疲劳驾驶)是引发交通事故的主要诱因,占事故总量的70%以上。某运输企业通过车联网系统采集了450辆运输车辆的高频数据(每秒1条)…...

C++初阶-模板初阶

目录 1.泛型编程 2.函数模板 2.1函数模板概念 2.2实现函数模板 2.3模板的原理 2.4函数模板的实例化 2.4.1隐式实例化 2.4.2显式初始化 2.5模板参数的匹配原则 3.类模板 3.1类模板定义格式 3.2类模板的实例化 4.总结 1.泛型编程 对广泛的类型法写代码&#xff0c;我…...

计算机网络自顶向下思维导图

主要就是记录下自己做的1-6章的思维导图&#xff0c;内容包含了每章每节内的重点内容 可能又错别字以及错误&#xff0c;欢迎指出 需要注意使用的是第七版的书 第一章 第二章 第二章二 第三章 第四章 第五章 第六章...

机器学习-入门-线性模型(1)

机器学习-入门-线性模型(1) 文章目录 机器学习-入门-线性模型(1)3.1 线性回归3.2 最小二乘解3.3 多元线性回归 3.1 线性回归 f ( x i ) w x i b 使得 f ( x i ) ≃ y i f(x_i) wx_i b \quad \text{使得} \quad f(x_i) \simeq y_i f(xi​)wxi​b使得f(xi​)≃yi​ 离散属性…...

Spark-Streaming3

无状态转换操作与有状态转换操作 无状态转换操作&#xff1a; 无状态转换操作仅处理当前时间跨度内的数据。例如&#xff0c;设置的采集时间为三秒&#xff0c;则只处理这三秒内的数据。 有状态转换操作(UpdateStateByKey)&#xff1a; 有状态转换操作可以跨批次处理数据。涉及…...

【Pandas】pandas DataFrame rfloordiv

Pandas2.2 DataFrame Binary operator functions 方法描述DataFrame.add(other)用于执行 DataFrame 与另一个对象&#xff08;如 DataFrame、Series 或标量&#xff09;的逐元素加法操作DataFrame.add(other[, axis, level, fill_value])用于执行 DataFrame 与另一个对象&…...

【Spark入门】Spark简介:分布式计算框架的演进与定位

目录 1 大数据计算框架的演进历程 1.1 Hadoop MapReduce&#xff1a;第一代分布式计算框架 1.2 Spark的诞生与革新 2 Spark的核心架构与优势 2.1 Spark架构概览 2.2 Spark的核心优势解析 3 Spark的适用场景与定位 3.1 典型应用场景 3.2 技术定位分析 4 Spark与Hadoop…...

基于ArcGIS的洪水淹没分析技术-洪水灾害普查、风险评估及淹没制图中的实践技术

洪水灾害是全球面临的主要自然灾害之一&#xff0c;对人类社会和自然环境造成巨大影响。准确的洪水淹没分析对于灾害预防、风险评估及应急响应至关重要。ArcGIS作为一款强大的地理信息系统软件&#xff0c;在洪水淹没分析领域具有显著优势。ArcGIS的洪水淹没分析主要依赖于其强…...

【数据可视化-38】基于Plotly得泰坦尼克号数据集的多维度可视化分析

&#x1f9d1; 博主简介&#xff1a;曾任某智慧城市类企业算法总监&#xff0c;目前在美国市场的物流公司从事高级算法工程师一职&#xff0c;深耕人工智能领域&#xff0c;精通python数据挖掘、可视化、机器学习等&#xff0c;发表过AI相关的专利并多次在AI类比赛中获奖。CSDN…...

数据库MySQL学习——day6(多表查询(JOIN)基础)

文章目录 1、关系型数据库中的表关系2、连接&#xff08;JOIN&#xff09;的基本概念3、INNER JOIN&#xff08;内连接&#xff09;3.1. 概念3.2. 语法结构 4、LEFT JOIN&#xff08;左连接&#xff09;4.1. 概念4.2. 语法结构 5、RIGHT JOIN&#xff08;右连接&#xff09;&am…...

Mysql如何高效的查询数据是否存在

文章目录 1. 三种方法2. 查询语句执行流程3. 三种方式对比 1. 三种方法 在业务中,我们有时候需要查询某个数据在数据表中是否存在,常见的方式有三种 SELECT COUNT(*) FORM tb_name WHERE conditionSELECT 1 FROM tb_name WHERE conditionSELECT EXISTS (SELECT 1 FROM tb_nam…...

MySQL快速入门篇---增删改查(下)

目录 一、修改&#xff08;Update&#xff09; 1.语法 2.示例 二、删除&#xff08;Delete&#xff09; 1.语法 2.示例 三、聚合函数 1.示例 1.1、COUNT 1.2、SUM 1.3、AVG 1.4、MAX 1.5、MIN 四、分组查询&#xff08;GROUP BY&#xff09; 1.语法 2.示例 …...

Mysql中隐式内连接和显式内连接的区别

1. 内连接&#xff08;INNER JOIN&#xff09; 内连接是数据库中一种常见的连接方式&#xff0c;用于从两个或多个表中返回满足连接条件的记录&#xff0c;即只返回两张表中匹配的行。 示例场景&#xff1a;有学生表&#xff08;包含学生 ID 和姓名&#xff09;和成绩表&…...

检测软件系统如何确保稳定运行并剖析本次检测报告?

检测软件系统&#xff0c;能及时找出问题&#xff0c;确保软件稳定运行&#xff0c;保障用户使用体验。下面会具体剖析本次检测报告。 检测概述 本次检测覆盖了系统性能、功能完整性等关键方面。它对软件整体状况做了严格评估。检测时对系统代码展开深度审查。还借助专业工具…...

【Office-Excel】单元格输入数据后自动填充单位

1.自定义设置单元格格式 例如我想输入数字10&#xff0c;回车确认后自动显示10kg。 右击单元格或者快捷键&#xff08;Ctrl1&#xff09;&#xff0c;选择设置单元格格式&#xff0c;自定义格式输入&#xff1a; 0"kg"格式仍是数字&#xff0c;但是显示是10kg&…...

GAMES202-高质量实时渲染(Real-Time Shadows)

目录 Shadow MappingshadowMapping的问题shadow mapping背后的数学PCF&#xff08;Percentage Closer Filtering&#xff09;PCSS&#xff08;Percentage closer soft shadows&#xff09;VSSM&#xff08;Variance Soft Shadow Mapping&#xff09;优化步骤3优化步骤1SAT&…...

vue+neo4j+flask 音乐知识图谱推荐系统

文章结尾部分有CSDN官方提供的学长 联系方式名片 文章结尾部分有CSDN官方提供的学长 联系方式名片 关注B站&#xff0c;有好处&#xff01; 编号: F027 架构: vueflaskneo4jmysql 亮点&#xff1a;协同过滤推荐算法知识图谱可视化 支持爬取音乐数据&#xff0c;数据超过3万条&…...

JavaScript 中 undefined 和 not defined 的区别

在 JavaScript 的调试过程中&#xff0c;你是否经常看到 undefined 却不知其来源&#xff1f;是否曾被 ReferenceError: xxx is not defined 的错误提示困扰&#xff1f;这两个看似相似的概念&#xff0c;实际上是 JavaScript 类型系统中最重要的分水岭。本文将带你拨开迷雾&am…...

设计一个新能源汽车控制系统开发框架,并提供一个符合ISO 26262标准的模块化设计方案。

今天&#xff0c;设计一个新能源汽车控制系统开发框架&#xff0c;并提供一个符合ISO 26262标准的模块化设计方案。以下为经过工业验证的技术方案&#xff1a; 一、系统架构设计 采用AUTOSAR Adaptive平台构建分布式系统&#xff0c;核心模块包括&#xff1a; 车辆控制单元(VC…...

基于STM32、HAL库的HX710A模数转换器ADC驱动程序设计

一、简介: HX710A是一款高精度24位模数转换器(ADC)芯片,专为电子秤和其他高精度测量应用设计。它通常与称重传感器(如应变片)配合使用,具有以下特点: 24位无失码精度 可编程增益:128或64 内置低噪声可编程放大器 片上稳压器,可直接为传感器供电 简单的数字接口(时钟+数据…...

python合并一个word段落中的run

在python-docx中&#xff0c;一个段落可以包含多个Run对象&#xff0c;每个Run对象可以具有不同的样式。如果你希望将一个段落中的所有Run对象合并为一个Run对象&#xff0c;同时保留所有文本内容&#xff0c;可以通过以下步骤实现&#xff1a; 合并Run对象的方法 遍历段落的…...

pytorch搭建并训练神经网络

#从小白开始学习人工智能# #学习笔记# 工具&#xff1a;pytorch 一、基础概念 1.神经网络是什么&#xff1f; 神经网络是人类受到生物神经细胞结构启发而研究出的算法体系。又称为人工神经网络&#xff08;Artificial neural network&#xff09; 最简版神经网络结构图&a…...

GCC 内建函数汇编展开详解

1. 引言 GNU 编译器集合&#xff08;GCC&#xff09;是广泛使用的开源编译器套件&#xff0c;支持多种编程语言&#xff0c;其中 C 语言编译器是其核心组件之一。在 C 语言编译过程中&#xff0c;GCC 不仅处理用户编写的标准 C 代码&#xff0c;还提供了一类特殊的函数——内建…...

iOS自定义电池电量显示控件 BatteryView 实现

iOS自定义电池视图:BatteryView 传送门:Android自定义电池电量显示控件 BatteryView 实现 在iOS开发中,自定义视图是提升用户体验的重要手段之一。本文将介绍如何通过Swift语言实现一个自定义的电池视图(BatteryView),并展示其功能和使用方法。 1. 功能概述 BatteryVi…...

LeetCode -- Flora -- edit 2025-04-27

1.接雨水 42. 接雨水 给定 n 个非负整数表示每个宽度为 1 的柱子的高度图&#xff0c;计算按此排列的柱子&#xff0c;下雨之后能接多少雨水。 示例 1&#xff1a; 输入&#xff1a;height [0,1,0,2,1,0,1,3,2,1,2,1] 输出&#xff1a;6 解释&#xff1a;上面是由数组 [0,1,…...

00-算法打卡-目录

1 数组 01-算法打卡-数组-二分查找-leetcode(704)-第一天-CSDN博客 02-算法打卡-数组-二分查找-leetcode(35)-第二天-CSDN博客 03-算法打卡-数组-二分查找-leetcode(34)-第三天_leetcode 34-CSDN博客 04-算法打卡-数组-二分查找-leetcode(69)-第四天-CSDN博客 05-算法打卡-数组…...

Vue2 与 Vue3 深度对比与技术解析

引言 Vue.js 是由尤雨溪创立的渐进式&#xff08;progressive&#xff09;JavaScript框架&#xff0c;自 2014 年发布以来&#xff0c;以其简单易用和灵活扩展性得到广泛应用。在 Vue2 的时代&#xff0c;它已经成为构建单页应用&#xff08;SPA&#xff09;和组件化开发的主流…...

Linux-UDP套接字编程

一.认识IP地址 IP 协议有两个版本, IPv4 和 IPv6. 我们之后凡是提到 IP 协议, 没有特殊说明的,默认都是指 IPv4。 IP 地址是在 IP 协议中, 用来标识网络中不同主机的地址;对于 IPv4 来说, IP 地址是一个 4 字节, 32 位的整数;我们通常也使用 "点分十进制" 的字符串表…...

tsconfig.json和tsconfig.node.json和tsconfig.app.json有什么区别

通过pnpm i vite 生成vue3项目时&#xff0c;会生成三个ts配置文件&#xff0c;分别是什么作用呢? 在Vue 3项目中&#xff0c;tsconfig.json、tsconfig.node.json和tsconfig.app.json是三个不同的TypeScript配置文件&#xff0c;它们分别用于不同的场景和目的。其中tsconfig.n…...

机器学习——Seaborn练习题

1、使用tips数据集&#xff0c;创建一个展示不同时间段(午餐/晚餐)账单总额分布的箱线图 import seaborn as sns import matplotlib.pyplot as plt import numpy as np import pandas as pdplt.rcParams["font.sans-serif"] ["SimHei"] plt.rcParams[&qu…...

Spring XML 外部实体(XXE)指南:示例和预防

什么是XXE? XML 文档遵循特定的标准。该标准强调了 XML 文档的构造方式,概述了有效 XML 文档与无效 XML 文档的区别等等。 该标准还指定了一个称为“实体”的术语。实体是某些内容的占位符。 实体可以是内部的,也可以是外部的(就像我们的情况一样)。 实体通过系统标识…...

C语言(3)—分支和循环

文章目录 一、程序的基本结构二、分支结构1. if语句2. if-else语句 三、关系与逻辑运算符1. 关系运算符2. 逻辑运算符 四、条件运算符&#xff08;三目运算符&#xff09;五、switch语句六、循环结构1. while循环2. for循环 七、循环控制语句1. break2. continue 八、循环嵌套九…...

【MCP】从一个天气查询服务带你了解MCP

1. 前言 这篇文章将通过一个集成高德天气查询的 MCP Server 用例&#xff0c;带你上手开发自己的 MCP Server ,文章将通过以下三种方式&#xff08;自己编写 Client 端代码&#xff0c;使用 mcp-cli 自带页面&#xff0c;集成到 Claude 桌面版等&#xff09;带你测试自己的 MC…...

【Leetcode 每日一题】3392. 统计符合条件长度为 3 的子数组数目

问题背景 给你一个整数数组 n u m s nums nums&#xff0c;请你返回长度为 3 3 3 的 子数组&#xff0c;满足第一个数和第三个数的和恰好为第二个数的一半。 子数组 指的是一个数组中连续 非空 的元素序列。 数据约束 3 ≤ n u m s . l e n g t h ≤ 100 3 \le nums.length…...

SALOME源码分析:Geomtry模块

本文分析SALOME Geometry模块。 一、核心组件 1.1 GeometryGUI 二、关键流程 三、插件 3.1 插件接口 GEOMPluginGUI定义了Geometry可以加载的插件接口。 3.2 插件列表 插件命令描述 BasicGUI BlocksGUI BooleanGUI BuildGUI DisplayGUI EntityGUI GenerationGUI GEOM…...

力扣HOT100之链表:23. 合并 K 个升序链表

这道题我是用最淳朴最简单的思路去做的&#xff0c;用一个while循环持续地将当前遍历到的最小值加入到合并链表中&#xff0c;while循环中使用一个for循环遍历整个指针数组&#xff0c;将其中的最小值和对应下标记录下来&#xff0c;并将其值加入到合并链表中&#xff0c;同时对…...

ArkTS 组件 通用事件 通用属性 速查表

ArkTS 组件 组件 通用事件 速查表 通用事件事件名称简要说明点击事件onClick(event: Callback<ClickEvent>, distanceThreshold: number): T相较于原有 onClick 接口&#xff0c;新增 distanceThreshold 参数作为点击事件移动阈值&#xff0c;当手指的移动距离超出所设…...