MAC 环境变量的加载顺序和设置环境path_Action_Wang的博客-程序员宅基地

技术标签: path  .bash_profile  paths  mac  

理论篇

Mac系统的环境变量,加载顺序为:
/etc/profile /etc/paths ~/.bash_profile ~/.bash_login ~/.profile ~/.bashrc

/etc/profile和/etc/paths是系统级别的,系统启动就会加载,后面几个是当前用户级的环境变量。后面3个按照从前往后的顺序读取,如果/.bash_profile文件存在,则后面的几个文件就会被忽略不读了,如果/.bash_profile文件不存在,才会以此类推读取后面的文件。~/.bashrc没有上述规则,它是bash shell打开的时候载入的。

PATH的语法为如下

#中间用冒号隔开
export PATH=$PATH:<PATH 1>:<PATH 2>:<PATH 3>:------:<PATH N>

上述文件的科普

  • /etc/paths (全局建议修改这个文件 )
    编辑 paths,将环境变量添加到 paths文件中 ,一行一个路径
    Hint:输入环境变量时,不用一个一个地输入,只要拖动文件夹到 Terminal 里就可以了。

  • /etc/profile (建议不修改这个文件 )
    全局(公有)配置,不管是哪个用户,登录时都会读取该文件。

  • /etc/bashrc (一般在这个文件中添加系统级环境变量)
    全局(公有)配置,bash shell执行时,不管是何种方式,都会读取此文件

  • .profile 文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行.并从/etc/profile.d目录的配置文件中搜集shell的设置
    使用注意:如果你有对/etc/profile有修改的话必须得重启你的修改才会生效,此修改对每个用户都生效。

  • ./bashrc 每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取.
    使用注意 对所有的使用bash的用户修改某个配置并在以后打开的bash都生效的话可以修改这个文件,修改这个文件不用重启,重新打开一个bash即可生效。

  • ./bash_profile 该文件包含专用于你的bash shell的bash信息,当登录时以及每次打开新的shell时,该文件被读取.(每个用户都有一个.bashrc文件,在用户目录下)
    使用注意 需要需要重启才会生效,/etc/profile对所有用户生效,~/.bash_profile只对当前用户生效。

source ./.bash_profile 或者 ./.profile 环境信息生效

操作篇

全局设置

  1. 创建一个文件:
sudo touch /etc/paths.d/mysql
  1. 用 vim 打开这个文件(如果是以 open -t 的方式打开,则不允许编辑):
sudo vim /etc/paths.d/mysql
  1. 编辑该文件,键入路径并保存(关闭该 Terminal 窗口并重新打开一个,就能使用 mysql 命令了)
/usr/local/mysql/bin
  1. $ source 相应的文件 生效配置环境

单个用户设置

  1. cd ~

  2. vim ~/.bash_profile (任意一个文件中添加用户级环境变量)

export PATH=/opt/local/bin:/opt/local/sbin:$PATH

把上述代码添加到~/.bash_profile上。

  1. source 相应的文件 生效配置环境

查看PATH

echo $PATH

 

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/w893932747/article/details/108268188

智能推荐

分类模型,pytorch->onnx->engine_视觉图像的博客-程序员宅基地

import torchfrom model import resnet18import os os.environ['CUDA_DEVICE_ORDER'] = 'PCI_BUS_ID'os.environ['CUDA_VISIBLE_DEVICES'] = '1' device = torch.device("cuda" if torch.cuda.is_available() else "cpu") def model_converter(): # model = res.

服务器http://localhost:8080要求用户输入用户名和密码并提示XDB?_zqq_2016的博客-程序员宅基地_服务器10.199.75.12将要求你输入用户名和密码

地址栏中输入http://localhost:8080/ ,系统弹框提示“XDB的服务器localhost要求用户输入用户名和密码”,上网查了资料后才发现原来是因为tomcat的8080端口被另一个web服务占用的原因,具体产生原因是:最新项目中用到Oracle,所以就安装了一个,Oracle的管理端占用了8080端口问题:解决方法: 1.修改Tomcat安装目录下的文件夹co

Linux 驱动 SPI Flash(W25Q80DV)_阿基米东的博客-程序员宅基地

  W25Q80DV 是 Winbond 的一款 SPI Flash,容量大小为 8M bit。如果还没看 W25Q80DV 的数据手册,赶紧去看!   https://blog.csdn.net/lu_embedded/article/details/80682374  本文描述的是在 i.MX6q 硬件平台上添加 W25Q80DV 芯片(SPI 设备),Linux 内核版本为 kerne...

phone statusbar.java_Android 设置系统SystemUI 顶部StatusBar状态栏透明一体化_weixin_39626613的博客-程序员宅基地

xmlns:android=http://schemas.android.com/apk/res/androidxmlns:systemui="http://schemas.android.com/apk/res/com.android.systemui"android:id="@+id/status_bar"android:background="#00000000"android:orient...

MyBatis多数据源配置实现读写分离_into0505的博客-程序员宅基地_mybatis 多数据源 读写分离

常见的数据库连接池有C3P0、DBCP和阿里巴巴的druid,后两个在实际场景中用的比较多,这个案例简单介绍Spring+Druid+MyBatis实现多数据源配置,基本原理是继承自Spring提供的AbstractRoutingDataSource这个抽象类,把所有的DataSource放到Map里面,然后重写determineCurrentLookupKey()这个方法,Spring的

随便推点

微信小程序|逻辑判断_算法与编程之美的博客-程序员宅基地

欢迎点击「算法与编程之美」↑关注我们!本文首发于微信公众号:&#34;算法与编程之美&#34;,欢迎关注,及时了解更多此系列文章。欢迎加入团队圈子!与作者面对面!直接点击!在开发微信小程...

在Oracle上构建 .NET 应用程序_databasechannel的博客-程序员宅基地

了解构建使用 Oracle 数据库的 .NET 应用程序所涉及到的基本但不可或缺的过程 本文涉及的下载 · 示例代码 · Oracle Data Provider for .NET (ODP.NET) 随着 Microsoft 的 .NET 框架的逐渐流行,许多开发人员迫切想了解关于将 .NET 应用程序与 Oracle 集成的最好的方式的信息 — 不仅在基本的连通性方面,还包括与使用 Visua

安卓智慧上海学习笔记系列——给文字图片加状态选择器不起作用解决办法_居春波的博客-程序员宅基地

在给文字设置颜色选择器后,发现选择后的文字的颜色并没有发生变化,原因很简单,就是在那个选择器里两个item的位置搞反了,应当把true的那个放第一行,便可解决!图片选择器亦是如此。

Python3 字典 keys() 方法_黄佳俊、的博客-程序员宅基地_python字典keys方法

注意:在使用中如果直接使用dict.keys(),那么返回值为dict_keys,并非直接的列表,若要返回列表值还需调用list函数。实例:&gt;&gt;&gt;phone_book={'sam':'1234','tom':'5678'} //创建字典&gt;&gt;&gt;phone_book.keys() //调用keys方法dict_keys(['sam', 'tom'])&gt;&gt;&gt;list(phone_book.key

添加邮箱功能_缤纷落叶之忠的博客-程序员宅基地

$(function(){ $(&quot;#config_valueDialog&quot;).dialog({ autoOpen: false, modal: true, width: 400, show: &quot;slide&quot;, buttons: { &quot;确定&quot;: fu

jprofiler远程监控阿里云springboot_你后面是啥的博客-程序员宅基地_jprofiler springboot

参考这个博主整理服务器环境: 64位centos7, jdk1.8Linux服务器安装官网下载地址上传到/opt目录下并解压.本地安装参考网上的教程即可配置服务端配置修改/etc/profile文件, 添加:export INSTALL4J_JAVA_HOME=/steve/java/jdk8/jre #jre安装目录export LD_LIBRARY_PATH=/opt/jprofiler11.1.3/bin/linux-x64 #jprofiler的目录.