每天一个linux命令(3):pwd命令
Linux中用 pwd 命令来查看”当前工作目录“的完整路径。 简单得说,每当你在终端进行操作时,你都会有一个当前工作目录。
在不太确定当前位置时,就会使用pwd来判定当前目录在文件系统内的确切位置。
1,$HOME这个代码是一个环境变量,它代表的是当前登录的用户的主文件夹的意思。(就是家目录的那个)(是相对路径)
/Users/wanglei/Desktop/qkl/fabric-samples 是绝对路径
2,$HOME/bin这个代码指的就是主文件夹下的bin子目录,代表的是文件夹的内部子目录。(注意不是根目录的那个)
3,PATH=PATH:HOME/bin这个代码是设置PATH环境变量,就是设置环境变量用等号,首先:冒号是分割符。记得Windows上面也有PATH环境变量,Windows的路径之间的分隔符是;分号。
4,PATH:HOME/bin表示在保留原来的PATH环境变量的基础上,再增加HOME/bin这个路径作为新的$PATH环境变量。计算机中的变量有许多,主要应用于系统文件的管理方面。
https://jingyan.baidu.com/article/d2b1d1029c1ea65c7e37d4c9.html
https://zhidao.baidu.com/question/1372677916733040219.html
Mac 每次都Mac 每次都要执行source ~/.bash_profile 配置的环境变量才生效
光脚丫的孩子
2020.01.13 07:54:25
字数 97
阅读 465
一、问题描述
Mac配置好了环境变量文件(.bash_profile)后,每次打开终端都需要执行一遍source ~/.bash_profile才能使环境变量生效,这样很是麻烦;
二、解决方法
1.创建.zshrc文件(如果已经有了就无须创建)
$ touch .zshrc
2.编辑.zshrc文件
open .zshrc
3.向.zshrc中添加如下内容
source ~/.bash_profile
Mac下配置环境变量配置不生效.bashrc文件每次打开终端都需要source的问题
先了解Mac环境变量加载顺序
/etc/profile
/etc/paths
~/.bash_profile
~/.bash_login
~/.profile
~/.bashrc
其中/etc/profile和/etc/paths是系统级别的,系统启动就会加载,
后几个是当前用户级的环境变量。后面3个按照从前往后的顺序读取,如果/.bash_profile文件存在,则后面的几个文件就会被忽略不读了,如果/.bash_profile文件不存在,才会以此类推读取后面的文件。
~/.bashrc没有上述规则,它是bash shell打开的时候载入的。
也就是说在当前用户的目录下,如果有了.bash_profile文件就不会去加载.bashrc文件。
login shellvsno login shell
login shell
需要输入用户名和密码,进入的 shell就是loginshell。
注意:在shell里使用su - user_name 切换用户,登录的shell也是login shell
login shell会读取的文件有:
/etc/profile、/.bash_profile,/.bash_login,~/.profile,按以上顺序读取。
no login shell。
在登录shell时不输入输入用户名和密码,那么这个就是no login shell。
在图形界面下,打开一个shell也是no login shell
no login shell 在打开的时候,执行的文件是:
~/.bashrc,而.bashrc又会执行/etc/bashrc文件。
解决方案:要加载.bashrc文件,需要在.bash_profile文件中直接加载该文件。
在.bash_profile文件中加入以下代码:
if [ -f ~/.bashrc ]; then
source ~/.bashrc
fi
改完需要source 命令生效
参考
上述修改时针对终端时bash的修改,假如终端是zsh的话,需要找到用户目录下的.zlogin文件,加入上述代码