首页 > 其他分享 >Mac 环境变量

Mac 环境变量

时间:2023-12-21 11:36:34浏览次数:36  
标签:profile 文件 shell 用户 Mac 环境变量 bash

成功路上并不拥挤,因为坚持的人并不多。只有坚持了,我们才知道,这一路上有多少事情需要实干,有多少东西需要学习。

环境变量

1. 环境变量的理解

环境变量一般是指在操作系统中用来指定操作系统运行环境的一些参数,如临时文件夹位置、系统文件夹位置以及某些应用软件文件的路径等等。环境变量相当于给系统或用户应用程序设置的一些参数,具体起什么作用这当然和具体的环境变量相关。

比如 Path,是告诉系统,当要求系统运行一个程序而没有告诉它程序所在的完整路径时,系统除了在当前目录下面寻找此程序外,还应到哪些目录下去寻找。

2. 环境变量配置文件

2.1 系统级别

系统级别配置文件,系统启动就会加载,修改需要 Root 权限。

  • /etc/paths :任何用户登陆时都会读取该文件,全局建议修改这个文件 。
  • /etc/profile:为系统的每个用户设置环境信息和启动程序,其配置对所有登录的用户都有效,一般不建议修改该文件。

2.2 用户级别

  • ~/.bash_profile:为当前用户设置专属的环境信息和启动程序,当用户登录时该文件执行一次。默认情况下,它用于设置环境变量,并执行当前用户的 .bashrc 文件,一般用户级环境变量会放到这个文件。
  • ~/.bash_login~/.profile:这三个文件也是依次执行的,如果 bash_profile 文件存在,则后面的两个文件就会被忽略不读了,如 bash_profile 文件不存在,才会以此类推读取后面的文件。
2.3 shell 打开时加载
  • /etc/bashrc/etc/zshrc:系统级配置,为每个运行 bash/zhs shell 的用户执行该文件,当 bash/zhs shell 打开时,该文件被执行,其配置对所有使用 bash 的用户打开的每个 bash 都有效。

  • ~/.bashrc~/.zshrc:用户级配置,作用同上。它是 bash/zsh shell 打开的时候载入的,对当前用户打开的每个 bash 都有效。

如果系统默认 shell 使用的是 zsh 而不是 sh、bash,那么 zsh 是不加载 .bash_profile 文件的,而是加载 .zshrc。source .zshrc 在 zsh 环境下读取配置文件。

3. 环境变量配置方法

  • 在 .bash_profile 文件中写入

    # export 命令用于设置或显示环境变量
    # 语法格式为 export 变量名称=变量设置值
    export PATH=$PATH:/opt/STM/STLinux-2.3/devkit/sh4/bin
    
  • 让配置文件立即生效

    # source 命令作用为在当前base环境下读取并执行file中的命令
    source .bash_profile
    

4. 常使用的环境变量

  • PATH:系统指定可执行文件的搜索路径。
  • SHELL:系统当前使用 Shell 程序。

5. 使用中常见问题

如果系统默认 shell 使用的是 zsh 而不是 sh、bash,那么 zsh 是不加载 .bash_profile 文件的,而是加载 .zshrc。source .zshrc 在 zsh 环境下读取配置文件。

确认 shell:

# 确认当前进程(运行时的)正在使用的 shell
echo $0 
# 确认当前用户默认shell
echo $SHELL

修改 shell:

我们可以用下面的命令来看看 macOS 系统有哪些支持的 shell。并来变更默认的 shell。

cat /etc/shells
chsh -s /bin/dash

优秀博客推荐:

https://baijiahao.baidu.com/s?id=1739693765201054630&wfr=spider&for=pc

标签:profile,文件,shell,用户,Mac,环境变量,bash
From: https://www.cnblogs.com/hubert-style/p/17918604.html

相关文章

  • 鸿蒙开发之在mac上安装集成开发工具DevEco Studio
    在安装集成环境后,会拉取os的依赖文件(类似npm的包文件),安装完成后创建项目  目录结构:   我们所写的代码就在入口文件中编写具体文档:https://developer.huawei.com/consumer/cn/training/course/slightMooc/C101682488597649338  ......
  • macOS Sonoma 14.2.1 (23C71) 正式版发布,ISO、IPSW、PKG 下载 (安全更新)
    macOSSonoma14.2.1(23C71)正式版发布,ISO、IPSW、PKG下载本站下载的macOS软件包,既可以拖拽到Applications(应用程序)下直接安装,也可以制作启动U盘安装,或者在虚拟机中启动安装。另外也支持在Windows和Linux中创建可引导介质。请访问原文链接:https://sysin.org/blog/ma......
  • macOS Sonoma 14.2.1 (23C71) 正式版 Boot ISO 原版可引导镜像下载 (安全更新)
    macOSSonoma14.2.1(23C71)正式版BootISO原版可引导镜像下载(安全更新)本站下载的macOS软件包,既可以拖拽到Applications(应用程序)下直接安装,也可以制作启动U盘安装,或者在虚拟机中启动安装。另外也支持在Windows和Linux中创建可引导介质。请访问原文链接:https://s......
  • clang VS gcc 的command-line机制: clang 在 MacOS 上要设置 -isysroot $(xcrun --sho
    clangVSgcc的command-line机制:clang在MacOS上作为编译器时要设置-isysroot$(xcrun--show-sdk-path)注意明确指定clang/clang++在MacOS上作为编译器时,一定要设置CFLAGS/CPPFLAGS为"-isysroot$(xcrun--show-sdk-path)${CFLAGS}"CC="/usr/local/bin/clang"C......
  • Mac M2 启动 kettle web 服务 cart
    查看本地资料库配置<?xmlversion="1.0"encoding="UTF-8"?><repositories><connection><name>dses_etldb</name><server>10.132.81.199</server><type>MYSQL</type><access&g......
  • BigdataAIML-ML-Models for machine learning Explore the ideas behind machine lear
    最好的机器学习教程系列:https://developer.ibm.com/articles/cc-models-machine-learning/ByM.TimJones,PublishedDecember4,2017ModelsformachinelearningAlgorithmsusedinmachinelearningfallroughlyintothreecategories:supervised,unsupervised,and......
  • Mac Arduino ESP8266 ESP32 搭建开发环境
    目录1、安装Arduino2、搭建开发板管理器3、可能出现的错误 1、安装ArduinoArduino下载. 官方下载地址:Arduino官方网站Arduino中文社区:下载地址安装方式:解压后无需安装,拖到应用程序(AppLication)里面就行了2、搭建开发板管理器 打开Ardu......
  • mac安装php-kafka
    首先,安装文档在: 如何使用PHPSDK接入消息队列Kafka版并收发消息_云消息队列Kafka版(ApsaraMQfor Kafka)-阿里云帮助中心(aliyun.com)但是按照这个文档,存在一个问题,一直报错:1...2checkingforrdkafkasupport...yes,shared3checkingforlibrdkafka/rdkafka.h"i......
  • Mac pycharm快捷键
    目录1、Edit编辑操作快捷键2、Run/Debug运行与调试3、窗口操作1、Edit编辑操作快捷键双击shift:全局搜索command+F:当前文件内进行查找command+r:当前文件内替换command+shift+r:全局替换option+command+L:格式化一行代码command+shift+⬆/⬇......
  • linux环境变量(转载)
    阅读目录一、Linux环境变量介绍1.1Linux环境变量介绍1.2Linux环境变量分类1.3Linux常用的环境变量二、Linux查看环境变量三、Linux添加环境变量3.1添加系统级环境变量(需root权限、针对所有用户、永久生效)3.2添加用户级环境变量3.3SSH/串口终端临时添加环境变量四、Lin......