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

Linux环境变量配置与std访问环境变量

文章目录

  • 前言
  • 1. 用户环境变量快速配置
    • 1.2 **以上语句的具体解释:**
    • 1.3 $PATHNAME实现增量式添加
  • 2.系统级永久配置与避坑指南
    • 2.1 特殊字符处理
    • 2.2 动态PATH管理
    • 2.3 敏感信息保护
    • 2.4 环境调试命令
  • 3. c++std中访问环境变量


前言

首先介绍一下Linux下各目录操作符的含义:
~/.bashrc-
~” :表示主目录,也就是当前登录用户的用户目录。
“/” :是指根目录:就是所有目录最顶层的目录。
“./” :表示当前目录,./ 一般需要和其他文件夹或者文件结合使用,指代当前目录下的东西。
“. .” :表示上级目录
“/.” :隐藏文件前会带.如.bashrc

作用域与类型

类型生效范围配置文件生命周期
临时变量当前Shell会话 无(命令行设置)终端关闭失效
用户变量单用户所有会话~/.bashrc .zshrc用户登录加载
系统变量所有用户/etc/environment系统重启生效

配置文件优先级与加载顺序

优先级配置文件加载场景
1/etc/environment系统启动时最先加载
2/etc/profile用户登录时执行
3~/.bash_profile用户登录Shell加载
4~/.bashrc打开新终端时加载

getenv("MYSQL_CONF_PATH") 为获取指定环境变量的路径

1. 用户环境变量快速配置

  1. 利用vim进入~/.bashrc文档,摁住ctrl+g,直接跳到最后一行,摁一下i键,进入插入模式,现在可以编辑文档了。
  2. 跳到最后一个字符,摁一下换行,可以在下一行输入命令。
  3. 一般来说在Ubuntu的终端中,ctrl+shift+c是复制,Ctrl+shift+v是粘贴;
  4. 我们输入第一个环境变量配置:
    export PATH=$PATH:/opt/Qt5.13.2/Tools/QtCreator/bin/
    这条命令的含义为将/opt/Qt5.13.2/Tools/QtCreator/bin/路径添加入PATH路径中
    $PATH表示当前PATH的值,然后加上冒号和新的路径。冒号在Linux中用来分隔不同的路径。
    所以整个命令的作用是将Qt Creator的bin目录添加到PATH中,这样用户就可以在终端直接运行Qt Creator的工具,而不需要输入完整路径。

PATH是一个重要的环境变量,系统用它来查找可执行文件。当用户在终端输入命令时,系统会按照PATH中的路径顺序搜索对应的可执行文件。

当在bash中输入qtcreator指令时,系统会进行查找,最后去添加的环境变量下的路径里查找
此时路径下可以检测到qtcreator可执行文件即可执行

  1. 路径添加好了,该关闭~/.bashrc了,摁一下esc键,退出插入模式;

  2. 输入冒号:wq,关闭bashrc;

  3. 这时候还没有生效!需要source一下
    source ~/.bashrc此命令执行后配置立即生效

  4. 刚才配置的环境终于在这个终端生效了!

1.2 以上语句的具体解释:

  1. export
    表示要设置一个环境变量,且这个变量会被当前终端会话及其子进程继承。

  2. PATH
    是系统的环境变量,定义了可执行文件的搜索路径。当你在终端输入一个命令(如 ls 或 git)时,系统会按照 PATH 中列出的目录顺序查找对应的可执行文件。

  3. $PATH
    表示引用当前已存在的 PATH 值。例如,如果原本的 PATH 是 /usr/bin:/usr/local/bin,那么 $PATH 就代表这个字符串。

  4. :/opt/Qt5.13.2/Tools/QtCreator/bin/
    将新的路径追加到 PATH 中。冒号 : 是 Linux 中路径的分隔符,这里表示在现有路径的基础上,新增一个路径:/opt/Qt5.13.2/Tools/QtCreator/bin/。

最终效果:
执行命令后,系统会在原有路径的基础上,额外搜索 /opt/Qt5.13.2/Tools/QtCreator/bin/ 目录下的可执行文件。

例如,你可以直接在终端运行 qtcreator 命令(假设该目录下有 qtcreator 程序),而无需输入完整路径 /opt/Qt5.13.2/Tools/QtCreator/bin/qtcreator。

接下来是直接配置环境变量
只需要在.bashrc文件中填入如下语句:

export MYSQL_CONF=/home/kyros1ee/QtEnviroment/WeChat-main/chatserver/conf/mysql.conf# MYSQL_HOME
export MYSQL_HOME=/opt/module/mysql

export后接自定义的环境变量名=路径即可引入需要的环境变量
可以使用echo $PATH或其他环境变量名来检查环境变量是否添加成功:

在这里插入图片描述

1.3 $PATHNAME实现增量式添加

上面我们用了好几次这个美元符,这个符号是 什 么 意 思 呢 ? 直观的理解就是,直接调取当前环境变量的值 ,因此我们可以用这个PATH,来代替原本环境变量的路径,要是加东西的话,在前面或者后面加一个分号就行了~

利用$PATH在后面!增加!新的路径

export DEMOPATH="/xxx/xxx/xx1x/"
export DEMOPATH="$DEMOPATH:/xxx/xxx/xx2x/"

打印结果如下:

/xxx/xxx/xx1x/:/xxx/xxx/xx2x/

确实在后面,效果是先调用之前的1,再在后面加上2;

利用$PATH在前面!增加!新的路径

export DEMOPATH="/xxx/xxx/xx1x/"
export DEMOPATH="/xxx/xxx/xx2x/:$DEMOPATH"

打印结果如下:

/xxx/xxx/xx2x/:/xxx/xxx/xx1x/

2.系统级永久配置与避坑指南

(1) 全局配置文件

sudo vim /etc/profile  
# 添加:  
export LANG="en_US.UTF-8"  
# 生效:重新登录或执行  
source /etc/profile

(2) 模块化配置(推荐)

# 创建独立配置文件  
sudo nano /etc/profile.d/myapp.sh  
# 内容:  
export API_ENV="production"  
# 新终端自动加载

(3) 环境变量专用文件

sudo nano /etc/environment  
# 直接写入(无需export):  
DB_HOST="127.0.0.1"

2.1 特殊字符处理

# 含空格路径必须引号包裹  
export DATA_DIR="/home/user/My Data"  # 包含$符号需转义  
export PWD="pa\$\$word"

2.2 动态PATH管理

# 安全追加PATH(防重复)  
if [[ ":$PATH:" != *":/new/path:"* ]]; then  export PATH="$PATH:/new/path"  
fi  # 数组形式管理(推荐)  
path_array=(  /usr/local/bin  $HOME/.local/bin  "${path_array[@]}"  
)  
export PATH=$(IFS=:; echo "${path_array[*]}")  

2.3 敏感信息保护

# 创建私有配置文件(设置600权限)  
chmod 600 ~/.env_secret  
# 内容:  
export DB_PASSWORD="s3cr3t!"  # 按需加载  
source ~/.env_secret  

2.4 环境调试命令

printenv         # 显示所有环境变量  
env | grep PATH  # 过滤特定变量  
export -p        # 查看已导出变量  

3. c++std中访问环境变量

stdlib.h中提供的接口

/* Execute the given line as a shell command.This function is a cancellation point and therefore not marked with__THROW.  */
extern int system (const char *__command) __wur;
/* Return the value of envariable NAME, or NULL if it doesn't exist.  */
extern char *getenv (const char *__name) __THROW __nonnull ((1)) __wur;#ifdef __USE_GNU
/* This function is similar to the above but returns NULL if theprograms is running with SUID or SGID enabled.  */
extern char *secure_getenv (const char *__name)__THROW __nonnull ((1)) __wur;
#endif#if defined __USE_MISC || defined __USE_XOPEN
/* The SVID says this is in <stdio.h>, but this seems a better place.	*/
/* Put STRING, which is of the form "NAME=VALUE", in the environment.If there is no `=', remove NAME from the environment.  */
extern int putenv (char *__string) __THROW __nonnull ((1));
#endif#ifdef __USE_XOPEN2K
/* Set NAME to VALUE in the environment.If REPLACE is nonzero, overwrite an existing value.  */
extern int setenv (const char *__name, const char *__value, int __replace)__THROW __nonnull ((2));/* Remove the variable NAME from the environment.  */
extern int unsetenv (const char *__name) __THROW __nonnull ((1));
#endif#ifdef	__USE_MISC
/* The `clearenv' was planned to be added to POSIX.1 but probablynever made it.  Nevertheless the POSIX.9 standard (POSIX bindingsfor Fortran 77) requires this function.  */
extern int clearenv (void) __THROW;
#endif

接口提供的描述已足够清楚,这里放一个简单的例子

#include <stdlib>
int main()
{const char* configPath = getenv("MYSQL_CONF");	//if (!configPath){LOG_ERROR << " mysql.conf MYSQL_CONF_PATH not set!";return false;}ifstream file(configPath);if (!file.is_open()){LOG_ERROR << "mysql.conf 文件不存在!";return false;}
}
#include <stdlib>
#include <fstream>
#include <iostream>int main()
{std::system("ls -l >test.txt"); // 执行 UNIX 命令 "ls -l >test.txt"std::cout << std::ifstream("test.txt").rdbuf();
}

相关文章:

Linux环境变量配置与std访问环境变量

文章目录 前言1. 用户环境变量快速配置1.2 **以上语句的具体解释&#xff1a;**1.3 $PATHNAME实现增量式添加 2.系统级永久配置与避坑指南2.1 特殊字符处理2.2 动态PATH管理2.3 敏感信息保护2.4 环境调试命令 3. cstd中访问环境变量 前言 首先介绍一下Linux下各目录操作符的含…...

【go】go语言slice/map的产生背景,及原理理解

介绍一下Slice 先讲一下slice的产生背景&#xff0c;首先&#xff0c;go本身是有数组的&#xff0c;但是不会自动扩容&#xff0c;然而实际工作中会有很多场景是要求能自动扩容的&#xff0c;比如说你接用户的数据&#xff0c;你肯定要设置一个可以自动扩容的数组来接&#xff…...

机器学习day3 - KNN的api调用

使用KNN算法判断是否为传入的图片是否为苹果 """ 使用KNN算法判断是否为传入的图片是否为苹果 """ # 导入需要的库 from sklearn.model_selection import train_test_split # 导入数据集划分函数 from sklearn.preprocessing import StandardS…...

Qt内置图标速查表

文章目录 1、说明&#x1f33e;2、实现效果&#x1f331;Qt6.7以下版本Qt6.7以上版本 3、主要代码&#x1f333; 更多精彩内容&#x1f449;个人内容分类汇总 &#x1f448; 1、说明&#x1f33e; 在我们使用Qt开发程序时&#xff0c;需要美化界面总会想到贴图&#xff0c;显示…...

Python(14)推导式

在 Python 编程中&#xff0c;推导式是一种强大而简洁的语法结构&#xff0c;它能让开发者以简洁的方式从一个数据序列创建另一个新的数据序列。无论是处理列表、字典、集合还是元组&#xff0c;推导式都能大显身手。这篇博客将结合菜鸟教程中的内容&#xff0c;通过丰富的代码…...

React速通笔记

相关视频&#xff1a; 黑马程序员前端React18入门到实战视频教程&#xff0c;从reacthooks核心基础到企业级项目开发实战&#xff08;B站评论、极客园项目等&#xff09;及大厂面试全通关_哔哩哔哩_bilibili 一、React介绍 React由Meta公司开发&#xff0c;是一个用于 构建W…...

深入蜂窝物联网:第二章 深度解读 NB-IoT:协议栈、部署与典型应用

1. NB-IoT 简介与应用场景 NB-IoT(Narrowband-IoT,窄带物联网)是3GPP在LTE演进基础上,为海量低速率IoT设备设计的无线接入技术。它仅占用 200 kHz 或 180 kHz(Guard-band)带宽,通过扩频和重复发射,提高了深度覆盖能力。 典型应用 远程抄表:电表、水表、气表等周期性少…...

处理对象集合,输出Map<String, Map<String, List<MyObject>>>格式数据,无序组合键处理方法

需求&#xff1a;对象有字段A&#xff0c;B&#xff0c;C&#xff0c;需要判断对象之间AB两个字段相同的对象 如&#xff1a; 对象1&#xff0c;Aaaa,Bbbb 对象2&#xff0c;Aaaa,Bbbb 对象3&#xff0c;Abbb,Baaa 对象4&#xff0c;Abbb,Baaa…...

基于SpringBoot的食物营养分析与推荐网站系统

作者&#xff1a;计算机学姐 开发技术&#xff1a;SpringBoot、SSM、Vue、MySQL、JSP、ElementUI、Python、小程序等&#xff0c;“文末源码”。 专栏推荐&#xff1a;前后端分离项目源码、SpringBoot项目源码、Vue项目源码、SSM项目源码、微信小程序源码 精品专栏&#xff1a;…...

人智交互中的AI世代

人智交互中的AI世代 一、研究背景与意义 1.1 技术演进背景 人工智能技术自1956年达特茅斯会议提出概念以来&#xff0c;经历了多次技术迭代与产业周期。2020年后&#xff0c;以大语言模型&#xff08;LLMs&#xff09;和生成式AI&#xff08;AIGC&#xff09;为代表的突破性进…...

从Flask到智能体:装饰器模式在AI系统中的架构迁移实践

引言&#xff1a;框架设计中的模式复用 在人工智能系统开发领域&#xff0c;大型语言模型驱动的智能体&#xff08;LLM Agent&#xff09;正面临日益复杂的架构挑战。有趣的是&#xff0c;Web开发框架Flask的装饰器模式为此类系统的构建提供了极具启发性的解决方案。本文将深入…...

Docker的常用命令

docker的常用命令 今天来介绍docker的常用命令&#xff0c;非常的详细&#xff0c;请大家看起来&#xff01; 获取镜像 如果只指定了镜像的名称&#xff0c;则默认会获取latest标签标记的镜像 命令格式&#xff1a;dokcer pull [Docker Registry地址]仓库名[:标签名] 获取c…...

在matlab中使用UAV123官方toolkits测试自己的数据集

一、前言 最近需要将自己的跟踪代码在自己拍摄的数据集上进行测试&#xff0c;这里我选择使用 UAV123 官方 toolkits 进行配置。首先需要搞清楚这部分代码是如何运行的&#xff0c;精度图和成功率图是如何绘制出来的&#xff0c;然后再将自己的数据集加进去进行测试。 二、UA…...

《淘宝 API 数据湖构建:实时商品详情入湖 + Apache Kafka 流式处理指南》

随着电商行业的蓬勃发展&#xff0c;淘宝作为头部电商平台&#xff0c;积累了海量的商品数据。构建淘宝 API 数据湖&#xff0c;将实时商品详情数据纳入其中&#xff0c;并借助 Apache Kafka 进行流式处理&#xff0c;能够为企业提供强大的数据支撑&#xff0c;助力精准营销、市…...

HTML5 WebSocket:实现高效实时通讯

一、引言 在当今的 Web 开发领域,实时通讯功能变得越来越重要。例如在线聊天、实时数据更新等场景都需要客户端与服务器之间能够进行高效的双向数据传输。HTML5 引入的 WebSocket 协议为我们提供了一种强大的解决方案,它在单个 TCP 连接上实现了全双工通讯,极大地改善了传统…...

数字人Live_Talking的搭建和使用

Live_Talking是一个实时交互流式数字人&#xff0c;可以实现音视频同步对话。今天咱们来试着部署一下项目。 先来看下本地环境 系统&#xff1a;Ubuntu 22.04 显卡&#xff1a;rtx 3060 cuda: Cuda 12.1 git上推荐cuda11.3&#xff0c;但是我用cuda12.2也搭建成功了。 1、…...

Coupang火箭计划深度攻略:eBay卖家突破韩国市场的三维数据作战模型

一、市场机遇与竞争格局解码 1.1 Coupang生态位分析 用户基数&#xff1a;2600万活跃买家&#xff08;占韩国成年人口68%&#xff09; 客单价表现&#xff1a;$82&#xff08;较eBay韩国站高37%&#xff09; 流量分布&#xff1a;移动端占比91%&#xff08;需重点优化移动端详…...

Flask + ajax上传文件(四)--数据入库教程

本教程将详细介绍如何使用Flask后端和AJAX前端实现Excel/csv文件上传,并将数据导入数据库的功能。 一、系统架构概述 前端(HTML+JS) → AJAX请求 → Flask后端 → 数据库 二、环境准备 1. 安装必要库 pip install flask pandas sqlalchemy openpyxl2. 项目结构 data_imp…...

C++ 部署的性能优化方法

一、使用结构体提前存放常用变量 在编写前后处理函数时&#xff0c;通常会多次用到一些变量&#xff0c;比如模型输入 tensor 的 shape&#xff0c;count 等等&#xff0c;若在每个处理函数中都重复计算一次&#xff0c;会增加部署时的计算量。对于这种情况&#xff0c;可以考…...

并发设计模式实战系列(8):Active Object

&#x1f31f; 大家好&#xff0c;我是摘星&#xff01; &#x1f31f; 今天为大家带来的是并发设计模式实战系列&#xff0c;第8章Active Object&#xff0c;废话不多说直接开始~ 目录 一、核心原理深度拆解 1. 对象与执行解耦架构 2. 核心组件 二、生活化类比&#xff…...

jenkins容器提示磁盘空间过低

进入jenkins容器查看&#xff1a; sudo docker exec -it jenkins sh df -h查看磁盘占用情况&#xff1a; # df -h Filesystem Size Used Avail Use% Mounted on overlay 59G 56G 193M 100% / tmpfs 64M 0 64M 0% /dev shm…...

记一次pdf转Word的技术经历

一、发现问题 前几天在打开一个pdf文件时&#xff0c;遇到了一些问题&#xff0c;在Win10下使用WPS PDF、万兴PDF、Adobe Acrobat、Chrome浏览器打开都是正常显示的&#xff1b;但是在macOS 10.13中使用系统自带的预览程序和Chrome浏览器&#xff08;由于macOS版本比较老了&am…...

【3分钟准备前端面试】Hybrid开发 谷歌浏览器调试安卓app

查看数据请求,页面dom结构和样式,日志打印输出,页面缓存等浏览器控制台素有功能,方便调试 检查元素,方便bug的定位 注:该文档是谷歌浏览器调试安卓apk内嵌网页 前提 app包需要是debug包,并且app的webview开启debug模式需要翻墙安卓手机打开开发者模式,开启usb调试调试…...

【二分查找】寻找峰值(medium)

6. 寻找峰值&#xff08;medium&#xff09; 题⽬描述&#xff1a;解法⼆&#xff08;⼆分查找算法&#xff09;&#xff1a;算法思路&#xff1a;C 算法代码&#xff1a;Java 算法代码&#xff1a; 题⽬链接&#xff1a;162. 寻找峰值 题⽬描述&#xff1a; 峰值元素是指其值…...

这是一款好用的PDF工具!

用户习惯有时确实非常顽固&#xff0c;想要改变它可能需要漫长的时间。 比如PDF软件&#xff0c;我认为国产的福/昕、万/兴等软件都非常不错&#xff0c;它们贴合国人的使用习惯&#xff0c;操作起来非常顺手。但因为我习惯使用DC&#xff0c;所以在处理PDF文档时&#xff0c;…...

征程 6 逆向自证 hbm 与 bc 一致性

1.引言 在征程 6 算法工具链使用过程中&#xff0c;会存在算法侧与软件侧的交接&#xff0c;偶尔会遇到&#xff0c;需要自证清白的情况&#xff0c;例如&#xff1a; 算法侧反馈&#xff1a;bc 精度没问题&#xff0c;也参考了【征程 6】bc 与 hbm 一致性比对 文章&#xff…...

推荐一个微软官方开源浏览器自动化工具,可以用于UI自动化测试、爬虫等,具备.Net、Java、Python等多个版本!

推荐一个微软官方开源&#xff0c;且功能非常强大的浏览器自动化工具&#xff0c; 让我们很容易控制Chromium、Firefox 和 WebKit 内核的浏览器&#xff0c;实现跨浏览器的网页自动化操作。 01 项目简介 Playwright 一个开源浏览器自动化工具。 支持 Chromium、WebKit 和 Fir…...

深入理解链表:从基础操作到高频面试题解析

目录 一、链表基础概念 1.1 什么是链表&#xff1f; 1.2 链表核心特性 1.3 链表与数组对比 二、链表类型详解 2.1 单向链表 2.2 双向链表 2.3 循环链表 三、链表核心操作实现 3.1 插入操作 3.2 删除操作 四、链表高频面试题精讲 4.1 反转链表&#xff08;LeetCode…...

【MCP Node.js SDK 全栈进阶指南】高级篇(1):MCP多服务器协作架构

随着业务规模的不断扩大和系统复杂度的提升,单一服务器架构往往无法满足高并发、高可用性和弹性扩展的需求。在MCP生态系统中,多服务器协作架构成为构建大规模应用的必然选择。本文将深入探讨MCP TypeScript-SDK在多服务器环境下的部署、协作和管理,以及如何构建高可用、高性…...

铭记之日(3)——4.28

铭记之日(3)——4.28 25.4.28&#xff0c;绝对是继20.12.19与24.6.26之后&#xff0c;又一个被钉在耻辱柱上的日子。 4.28本质上为12.19的严重恶劣版。 道德败坏、恶劣的大骗子终于在今日穿帮落马。 斯文面孔下&#xff0c;竟藏匿了如此罪恶幽暗混沌的内心。 24.10.20&…...

4月28日信息差全景:国际局势、科技突破与市场震荡一、国际政治与安全:俄乌冲突关键转折

一、国际政治与安全:俄乌冲突关键转折 1. 乌克兰反攻进展与情报差异 前线动态: 俄国防部称在顿涅茨克击退乌军三次进攻,摧毁12辆坦克;乌方则宣布在巴赫穆特南部推进2公里,双方战报存在显著差异。 信息差根源:战场信息管控导致西方媒体与俄媒报道截然不同。 国际援助: 美…...

Docker 容器虚拟化技术和自动化部署

Docker 容器虚拟化技术和自动化部署 一、Docker 核心组件1.1 Docker 引擎1.2 Docker 镜像1.3 Docker 容器1.4 Docker 仓库 二、Docker 环境安装清华镜像安装 三、Docker 基本操作3.1 镜像管理3.1.1 查看本地镜像 docker images3.1.2 添加镜像标签 docker tag3.1.3 查看镜像信息…...

人物5_My roommate

こんにちは Today, I will continue to share my life in JaPan. Everyone both know I couldn’t say JanPanese fluently【But I still learn this Language, I think it’s interesting for me{maybe it’s one exciting challenge, I want become a challenger that it li…...

OpenResty技术深度解析:原理、应用与生态对比-优雅草卓伊凡

OpenResty技术深度解析:原理、应用与生态对比-优雅草卓伊凡 一、OpenResty技术概述 1.1 OpenResty是什么? OpenResty是一个基于Nginx的高性能Web平台,它将标准的Nginx核心与一系列强大的第三方模块(主要是LuaJIT)捆绑在一起,形成了一个全功能的Web应用服务器。不同于传…...

深度学习任务评估指标

一、概念篇 混淆矩阵有何作用? 混淆矩阵(Confusion Matrix)是用于评估分类模型性能的工具,它展示了模型预测结果与实际标签之间的对比。混淆矩阵通常包括四个关键元素: True Positive (TP):模型正确预测为正类的数量。True Negative (TN):模型正确预测为负类的数量。F…...

Python-librosa库提取音频数据的MFCC特征

文章目录 MFCC特征代码分享 MFCC特征 MFCC&#xff08;Mel-Frequency Cepstral Coefficients&#xff09;是通过人耳对声音频率的感知方式对音频信号进行处理得到的特征&#xff0c;广泛用于语音识别和音频处理。 代码分享 import os import librosa import pywt import matpl…...

因特网和万维网

本文来源 &#xff1a;腾讯元宝 因特网&#xff08;Internet&#xff09;和万维网&#xff08;World Wide Web&#xff0c;简称WWW&#xff09;是紧密相关但完全不同的两个概念&#xff0c;它们的核心区别如下&#xff1a; 本质不同​​ ​​因特网&#xff08;Internet&#…...

道可云人工智能每日资讯|“人工智能科技体验展”在中国科学技术馆举行

道可云元宇宙每日简报&#xff08;2025年4月28日&#xff09;讯&#xff0c;今日元宇宙新鲜事有&#xff1a; 《2025年提升全民数字素养与技能工作要点》发布 近日&#xff0c;中央网信办、教育部、工业和信息化部、人力资源社会保障部联合印发《2025年提升全民数字素养与技能…...

Day8 鼠标控制与32位模式切换

文章目录 1. 例程harib05a&#xff08;鼠标解读1&#xff09;2. 例程harib05b&#xff08;代码整理&#xff09;3. 例程harib05c&#xff08;鼠标解读2&#xff09;4. 例程harib05d&#xff08;移动鼠标指针&#xff09;5. 通往32位模式之路 1. 例程harib05a&#xff08;鼠标解…...

塔能科技:点亮节能之光,赋能工厂与城市

在能源形势日益严峻的当下&#xff0c;节能成为了各行各业的关键任务。工厂作为能耗大户&#xff0c;降低能耗迫在眉睫&#xff1b;市政照明作为城市运行的基本保障&#xff0c;也急需向绿色节能转型。塔能科技凭借其能源精准节能和定制开发的核心能力&#xff0c;为工厂节能和…...

UDP 报文结构与注意事项总结

目录 一、UDP报文结构简介 1. 源端口号&#xff08;Source Port&#xff0c;16位&#xff09;&#xff1a; 2. 目的端口号&#xff08;Destination Port&#xff0c;16位&#xff09;&#xff1a; 3. 长度&#xff08;Length&#xff0c;16位&#xff09;&#xff1a; 4. 校…...

DBeaver CE 24.1.3 (Windows 64位) 详细安装教程

1. 下载安装包 dbeaver-ce-24.1.3-x86_64-setup.exe下载链接&#xff1a;https://pan.quark.cn/s/5a8dc9ad747f。 下载完成后&#xff0c;双击运行安装程序。 2. 运行安装向导 选择语言&#xff1a;安装程序启动后&#xff0c;选择安装语言&#xff08;如英文或中文&#xff…...

Java多线程之线程控制

1、线程睡眠——sleep 如果我们需要让当前正在执行的线程暂停一段时间&#xff0c;并进入阻塞状态&#xff0c;则可以通过调用Thread的sleep方法 注意如下几点问题 ①、sleep是静态方法&#xff0c;最好不要用Thread的实例对象调用它&#xff0c;因为它睡眠的始终是当前正在运…...

任意波形发生器——2路同步DA模拟量输出卡

定义‌ 任意波形发生器&#xff08;Arbitrary Waveform Generator, AWG&#xff09;是一种电子测试仪器&#xff0c;能够通过数字信号处理&#xff08;DSP&#xff09;和数模转换&#xff08;DAC&#xff09;技术生成非周期性、可编程的任意形状电信号。与传统函数发生器仅支持…...

【Java】 使用 HTTP 响应状态码定义web系统返回码

系统状态码定义 public interface GlobalErrorCodeConstants {ErrorCode SUCCESS new ErrorCode(0, "成功");// 客户端错误段 ErrorCode BAD_REQUEST new ErrorCode(400, "请求参数不正确");ErrorCode UNAUTHORIZED new ErrorCode(401, "账号未登…...

测试反馈陷入死循环?5大策略拆解新旧Bug难题

新旧Bug堆叠&#xff0c;测试反馈陷入死循环&#xff0c;如果不及时解决此问题&#xff0c;往往容易导致项目延期、成本增加、团队效率降低&#xff0c;直接影响产品的市场竞争力 。因此需及时应对此问题&#xff0c;进而保障项目进度如期进行&#xff0c;提升软件质量&#xf…...

结合大语言模型的机械臂抓取操作学习

结合大语言模型的机械臂抓取操作学习&#xff08;完整ppt和代码&#xff09;无视频 代码能正常运行时不负责答疑! 电子产品&#xff0c;一经出售&#xff0c;概不退换 算法设计、毕业设计、期刊专利&#xff01;感兴趣可以联系我。 &#x1f3c6;代码获取方式1&#xff1a; 私信…...

待验证---Oracle 19c 在 CentOS 7 上的快速安装部署指南

Oracle 19c 在 CentOS 7 上的快速安装部署指南 Oracle Database 19c 是一个功能强大的企业级数据库系统&#xff0c;下面我将为您提供在 CentOS 7 上快速安装部署 Oracle 19c 的详细步骤。 一、准备工作 1. 系统要求 CentOS 7 (64位)最小内存: 2GB (推荐 8GB 以上)最小磁盘…...

风力发电领域canopen转Profinet网关的应用

在风力发电领域&#xff0c;开疆canopen转Profinet网关KJ-PNG-205的应用案例通常涉及将风力涡轮机内部的CANopen网络与外部的Profinet工业以太网连接起来。这种转换网关允许风力发电场的控制系统通过Profinet协议收集和监控涡轮机的状态信息&#xff0c;同时发送控制命令。 风力…...

vr全景相机如何选择?

VR全景相机&#xff0c;作为虚拟现实技术的核心设备之一&#xff0c;能够拍摄360度全景照片和视频&#xff0c;使用户通过虚拟现实设备身临其境地体验拍摄场景。 这种技术的快速发展&#xff0c;得益于传感器、图像处理和计算机视觉技术的不断进步。 选择一台合适的VR全景相机…...