查看环境变量
# 查看全部环境变量
env
# 查看某一个
echo $PATH
设置环境变量
# 新增环境变量
export http_proxy=http://127.0.0.1:8080/
# 删除环境变量
unset http_proxy
首次使用查看 家 目录有没有 .bash_profile
文件,没有就创建一个,这样才能使用那些命令。更改完此文件用 source ~/.bash_profile
命令使配置生效
用户级别 ~/.bash_profile
~/.bashrc
~/.bash_history
和~/.bash_logout
文件的区别
上面这三个文件是bash shell的用户环境配置文件,位于用户的主目录下。
~/.bash_profile
:是最重要的一个配置文件,它在用户每次登录系统时被读取,里面的所有命令都会被bash执行。
~/.bashrc
:会在bash shell调用另一个bash shell时读取,也就是在shell中再键入bash命令启动一个新shell时就会去读该文件。这样可有效分离登录和子shell所需的环境。但一般 来说都会在.bash_profile里调用.bashrc脚本以便统一配置用户环境。
~/.bash_history
:里面记录了你在bash shell中输入的所有命令。
~/.bash_logout
:在退出shell时被读取。所以我们可把一些清理工作的命令放到这文件中。
系统级别 /etc/bashrc
/etc/profile
文件的区别
当在用户主目录下找不到 ~/.bash_profile
和 ~/.bashrc
时,就会读取这两个文件。
在node中使用环境变量
我们经常启动node服务时这么用:
// linux中
NODE_ENV=test node app.js
// windows中
set NODE_ENV=test
node app
// 使用 cross-env
npm i cross-env -g
cross-env NODE_ENV=test node app
// 直接在代码中设置环境变量
process.env.NODE_ENV = 'production'
通过以上命令启动程序,指定当前环境变量 NODE_ENV 的值为 test,那么在 app.js 中可通过 process.env 来获取环境变量:
console.log(process.env.NODE_ENV)
// test