Windows 中环境变量的查看与设置

news2025/1/23 21:40:59

接触了LLM应用开发后,经常要用到环境变量的设置(openAI apikey啥的)

但是老忘记,今天来学习和总结一下

主要用到以下几种:使用 PowerShell、CMD 和 Python 来查看和设置环境变量

文章目录

    • 1. PowerShell
      • 查看环境变量:
      • 设置环境变量:
    • 2. CMD (命令提示符)
      • 查看环境变量:
      • 设置环境变量:
    • 3. Python
      • [1]os
        • 查看环境变量:
        • 设置环境变量:
      • [2]dotenv
    • 关于环境变量和.env文件
    • 我的一个疑问

1. PowerShell

查看环境变量:

  • 查看所有环境变量:

    Get-ChildItem Env:
    
  • 查看特定环境变量(例如 PATH):

    $env:PATH
    

设置环境变量:

  • 为当前会话设置环境变量(例如设置 MYVAR123):

    $env:MYVAR = "123"
    
  • 为系统永久设置环境变量(需要管理员权限):

    [System.Environment]::SetEnvironmentVariable("MYVAR", "123", "Machine")
    

2. CMD (命令提示符)

查看环境变量:

  • 查看所有环境变量:

    set
    
  • 查看特定环境变量(例如 PATH):

    echo %PATH%
    

设置环境变量:

  • 为当前会话设置环境变量:
    set MYVAR=123
    

注意:在 CMD 中设置的环境变量仅对当前命令行会话有效。

3. Python

[1]os

查看环境变量:
import os

# 查看所有环境变量
print(os.environ)

# 查看特定环境变量(例如 `PATH`)
print(os.environ['PATH'])
设置环境变量:
import os

os.environ['MYVAR'] = '123'

注意:在 Python 中,这样设置的环境变量只会影响当前进程。

[2]dotenv

  • 安装命令是:

    pip install python-dotenv
    
  • 使用代码如下

    
    import os
    from dotenv import load_dotenv
    
    load_dotenv()
    
  • 现在可以使用 os.environ 获取 .env 文件中定义的变量了
    比如常用到数据库和openai的api-key

    OPENAI_API_KEY=your_openai_api_key_here
    DATABASE_URL=postgres://user:password@localhost:5432/chatbot_db
    LOG_LEVEL=DEBUG
    ANALYTICS_API_ENDPOINT=https://api.analytics-service.com/
    ANALYTICS_API_KEY=your_analytics_api_key_here
    

关于环境变量和.env文件

以下是chatgpt的回答

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

我的一个疑问

不同的开源项目看到很多种存储配置的方式,我们该如何选择呢?

还是问问gpt

配置方法优点缺点最佳使用情况
.env- 简单且通用
- 适合存储敏感信息
- 与环境变量集成
- 结构简单
- 需要外部库
存储简单的配置和敏感信息
config.json- 广泛支持
- 结构灵活
- 不适合存储敏感信息
- 缺乏注释功能
跨语言项目,或需要稍微复杂结构的配置
config.yaml- 可读性好
- 支持注释
- 适合复杂配置
- 需要外部库
- 语法相对严格
复杂的配置结构,需要注释和文档的项目
config.py- 使用 Python 语法
- 动态配置
- 利用 Python 模块系统
- 可执行性可能有风险
- 不适合与其他语言共享配置
Python 项目,需要动态或条件配置

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

掌握深入挖掘数据本质的方法

文章目录 掌握深入挖掘数据本质的方法1. 确定数据类型2. 数据清洗3. 数据可视化4. 探索性数据分析5. 特征工程6. 机器学习算法7. 自然语言处理 📕我是廖志伟,一名Java开发工程师、Java领域优质创作者、CSDN博客专家、51CTO专家博主、阿里云专家博主、清华…

C语言:冒泡排序

C语言 基础开发----目录 冒泡排序 1. 原理 对一个有n个数据的数组进行遍历,依次对相邻两个数据进行比较大小,若大的数据在前面则交换位置(升序),完成一次遍历后数组中最大的数据到了数组的末尾位置,就象水…

六、RocketMQ发送事务消息

事务消息介绍 在一些对数据一致性有强需求的场景,可以用 Apache RocketMQ 事务消息来解决,从而保证上下游数据的一致性。 以电商交易场景为例,用户支付订单这一核心操作的同时会涉及到下游物流发货、积分变更、购物车状态清空等多个子系统的…

MySQL有时候命中索引有时候又不命中

索引失效的情况 -----可能 索引主要看where 、group by 、order by 1.组合索引不遵循最佳左前缀法制。最佳左前缀法制:如果索引了多列,要遵循最左前缀法则,指的是查询从索引的最左前列开始并且不跳过索引中的列。如组合索引为A B C 只有ABC,A…

【蓝桥】数树数

一、题目 1、题目描述 给定一个层数为 n n n 的满二叉树,每个点编号规则如下: 具体来说,二叉树从上往下数第 p p p 层,从左往右编号分别为:1,2,3,4,…, 2p-1。 给你一条从根节点开始的路径&#xff0…

Node.js初体验

Node.js简介 node.js的运行环境 1.V8引擎对js代码进行解析与执行 2.内置API:fs、path、http...等,提供了一些能力,能够使得js调用这些API去做一些后端的事情 流程:我们在node.js的运行环境中编写待执行的JavaScript代码&#…

Spring Cloud Gateway 使用 Redis 限流使用教程

从本文开始,笔者将总结 spring cloud 相关内容的教程 版本选择 为了适应 java8,笔者选择了下面的版本,后续会出 java17的以SpringBoot3.0.X为主的教程 SpringBoot 版本 2.6.5 SpringCloud 版本 2021.0.1 SpringCloudAlibaba 版本 2021.0.1.…

单目3D目标检测——MonoCon 模型训练 | 模型推理

本文分享 MonoCon 的模型训练、模型推理、可视化3D检测结果、以及可视化BEV效果。 模型原理,参考我这篇博客:【论文解读】单目3D目标检测 MonoCon(AAAI2022)_一颗小树x的博客-CSDN博客 源码地址:https://github.com/2…

在vs code中创建一个名为 “django_env“ 的虚拟环境报错?!以下或许方法可以解决

# vs code 终端窗口中运行: mkvirtualenv django_env # 拓展: mkvirtualenv django_env 是一个命令,用于创建一个名为 "django_env" 的虚拟环境。虚拟环境是一种用于隔离不同Python项目所需依赖的工具。通过创建虚拟环境&#x…

【分布式计算】九、容错性 Fault Tolerance

分布式系统应当有一定的容错性,发生故障时仍能运行 一些概念: 可用性Availability:系统是否准备好立即使用 可靠性Reliability:系统连续运行不发生故障 安全性:衡量安全故障的指标,没有严重事件发生 可维护…

zabbix内置宏、自动发现与注册

一、zabbix内置宏 1、概念: 在Zabbix中,内置宏是一种特殊的变量,通常用在 Trigger 名称和表达式中,引用有关监控对象的信息。 2、种类: {HOST.NAME} 主机名 {HOST.IP} 主机 IP 地址 {TRIGGER.DESCRIPTION} 触…

Unity中Shader的深度缓冲区

文章目录 前言一、什么是深度缓冲区深度缓冲区是和颜色缓冲区、模板缓冲区平行的一个缓冲区在这里插入图片描述 二、什么是深度信息三、深度缓冲区的作用 前言 Unity中的深度缓冲区 一、什么是深度缓冲区 深度缓冲区是和颜色缓冲区、模板缓冲区平行的一个缓冲区 深度缓冲区&a…

勒索软件组织声称它“损害了所有索尼系统”

新晋勒索软件组织 RansomedVC 声称已成功入侵娱乐巨头索尼的计算机系统。正如勒索软件团伙所做的那样,它在其暗网网站上发布了这一消息,并在那里出售从受害者计算机网络中窃取的数据。 该公告称索尼的数据正在出售: 索尼集团公司&#xff08…

数据结构与算法--并查集结构

数据结构与算法--并查集结构 1 岛问题 2 并查集结构 1 岛问题 一个矩阵中只有0和1两种值,每个位置都可以和自己的上、下、左、右 四个位置相连,如果有一片1连在一起,这个部分叫做一个岛,求一个矩阵中有多少个岛? 【举例】 001…

FutureTask的测试使用和方法执行分析

FutureTask类图如下 java.util.concurrent.FutureTask#run run方法执行逻辑如下 public void run() {if (state ! NEW ||!RUNNER.compareAndSet(this, null, Thread.currentThread()))return;try {Callable<V> c callable;if (c ! null && state NEW) {V res…

【软考】9.4 图的概念/存储/遍历/最小生成树/拓扑/查找

《图》 图的存储&#xff08;顶点和边&#xff09; 邻接矩阵&#xff1a;适合边数较多的图&#xff0c;不易造成浪费无向图&#xff1a;不分方向&#xff1b;对称矩阵 邻接链表&#xff1a;顶点&#xff0c;边——>&#xff08;编号&#xff0c;权值&#xff09;&#xff1b…

二维数组的行指针与列指针

二维数组的行指针与列指针 笔记来源&#xff1a;懒猫老师-C语言-用指针访问二维数组&#xff08;指针与二维数组&#xff09; 声明&#xff1a;本文笔记来自bili懒猫老师&#xff0c;仅供学习参考 回顾一维数组 int a[3];//其中a或a[0]是数组首地址 //a1指向第二个元素的地址…

The SDK location is inside Studio install location 解决

The SDK location is inside Studio install location 解决 安装 Android Studio SDK 时提示&#xff1a;The SDK location is inside Studio install location 解决 问题&#xff1a; 由于 SDK 与 编辑器(Android Studio)的安装在同一目录下所以报错。 解决 你需要在 Andro…

五、RocketMQ发送顺序消息

顺序消息的应用场景 在有序事件处理、撮合交易、数据实时增量同步等场景下&#xff0c;异构系统间需要维持强一致的状态同步&#xff0c;上游的事件变更需要按照顺序传递到下游进行处理。 例如需要保证一个订单的生成、付款和发货&#xff0c;这三件事情是被顺序执行的。 如…

C# OpenVINO Det 物体检测

效果 耗时 elephant:89% Preprocess: 0.00ms Infer: 47.21ms Postprocess: 11.63ms Total: 58.84ms 项目 代码 using OpenCvSharp; using Sdcb.OpenVINO; using Sdcb.OpenVINO.Natives; using System; using System.Diagnostics; using System.Drawing; using System.Text; …