macOS设置环境变量和别名

因为我的mac所用shell是bash,所以本文中涉及的环境变量别名配置均在~/.zshrc文件中,且在每次配置完成后,需要执行source ~/.zshrc命令使配置文件生效

环境变量

通过配置环境变量,我们可以将某个路径暴露到全局,这样可以在全局任意位置打开的终端中执行该路径下的文件

这里我们以vue脚手架为例,分别局部安装vue-cli(2.9.6,对应vue2)和@vue-cli(4.5.0,对应vue3),然后通过配置环境变量来实现在任意位置打开的终端中使用vue-cli相关指令

局部安装vue-cli和@vue/cli

我在/Users/liaijie/.nvm/versions/node路径下分别新建vue-cli2vue-cli3文件夹,这里请忽略nvm,并且我已经卸载了全局安装的vue-cli,然后在这两个文件夹中分别安装vue-cli@vue/cli

 liaijie@Silence  ~/.nvm/versions/node/vue-cli2  5b3d188 ±: npm init -y
 .
 .
 .
 liaijie@Silence  ~/.nvm/versions/node/vue-cli2  5b3d188 ±: npm install [email protected]
 .
 .
 .
 liaijie@Silence  ~/.nvm/versions/node/vue-cli3  5b3d188 ±: npm init -y
 .
 .
 .
 liaijie@Silence  ~/.nvm/versions/node/vue-cli3 5b3d188 ±: npm install @vue/[email protected]
 .
 .
 .

环境变量规则

添加单条环境变量

export PATH=文件夹路径:$PATH

export PATH=$PATH:文件夹路径

其中,只有文件夹路径是根据实际情况填写,剩下的exportPATH$PATH都是固定的。这里的$PATH可以看做已有的环境变量,如果以$PATH:开头,则该条环境变量会被追加在原有环境变量后面,并以:分隔;如果以:$PATH结尾,则该条环境变量会被添加在原有环境变量前面,并以:分隔。

注意: =左右两侧不能有空格;结尾也不需要加分号或者逗号;将文件夹直接拖入环境变量文件编辑器中(我这里用的是文本编辑器),可以直接显示文件夹路径

一条环境变量中添加多个路径

`export PATH=文件夹路径1:文件夹路径2:文件夹路径3.......文件夹路径N:$PATH` 

多个路径中间用:隔开

环境变量中使用变量

export 自定义名称=文件夹路径
export PATH=$自定义名称/文件夹A:$PATH
export PATH=$自定义名称/文件夹B:$PATH

在这里,其实就是将多条环境变量的公共路径提取出来,并且起一个自定义的名称,然后再在其他环境变量中通过$自定义名称来引用

实践

现在我们以上面的vue脚手架为例,来配置环境变量

export PATH=/Users/liaijie/.nvm/versions/node/vue-cli2/node_modules/.bin:$PATH
export PATH=/Users/liaijie/.nvm/versions/node/vue-cli3/node_modules/.bin:$PATH

在这里,因为vue-cli@vue-cli的启动文件(或可执行文件)名称都是vue,所以我改了它们的名字用于区分

测试一下,成功!!

 liaijie@Silence  ~ source ~/.zshrc
 liaijie@Silence  ~ vue-cli2 --version
  2.9.6
 liaijie@Silence  ~ vue-cli3 --version
  @vue/cli 5.0.8

别名

注意:

  • 等号(=)前后不能有空格,否则就会出现语法错误了。
  • 如果value中有空格或tab,则value一定要使用引号(单、双引号都行)括起来。

全局指令设置别名

有些全局指令的名字过长或者不便于记忆,我们就可以通过给该命令配置别名来方便自己的使用

alias 自定义名称='已有指令名称'
# 例如
alias v='vue'
alias c="clear"

上面例子中,将全局指令vue设置别名为v,即以后使用vue相关指令时使用v代替,例如v --version;将终端清屏指令clear设置别名为c,以后清屏时直接输入c回车即可。

给应用程序设置别名

例如我们想通过指令来启动某个app,这里以网易云音乐为例,在访达中右键应用图标,选择显示包内容,即可打开应用对应文件夹,这里注意,别名中的路径要精确到执行文件

...
alias wyy="/Applications/NeteaseMusic.app/Contents/MacOS/NeteaseMusic"
...

通过指令启动应用

liaijie@Silence  ~  wyy
2023-04-13 16:14:09.482 NeteaseMusic[21695:282351] NSWindow warning: adding an unknown subview: <INMovableByBackgroundContainerView: 0x135e5b5e0>. Break on NSLog to debug.
2023-04-13 16:14:09.483 NeteaseMusic[21695:282351] Call stack:
(
	0   AppKit                              0x000000018c2090e8 -[NSThemeFrame addSubview:] + 124
	1   AppKit                              0x000000018c208d84 -[NSView addSubview:positioned:relativeTo:] + 216
	2   AppKit                              0x000000018c208c10 -[NSThemeFrame addSubview:positioned:relativeTo:] + 52
	3   NeteaseMusic                        0x0000000102cf9474 NeteaseMusic + 152692
	4   NeteaseMusic                        0x0000000102cf8694 NeteaseMusic + 149140
	5   NeteaseMusic                        0x0000000102cf6b2c NeteaseMusic + 142124
	6   NeteaseMusic                        0x0000000102d659e0 NeteaseMusic + 596448
	7   NeteaseMusic                        0x0000000102d08484 NeteaseMusic

启动成功
macOS设置环境变量和别名_第1张图片

查看所有别名

使用alias命令即可查看所有别名

liaijie@Silence  ~ alias
-='cd -'
.
省略
.
code='/Applications/Visual\ Studio\ Code.app/Contents/Resources/app/bin/code'
egrep='grep -E --color=auto --exclude-dir={.bzr,CVS,.git,.hg,.svn,.idea,.tox}'
fgrep='grep -F --color=auto --exclude-dir={.bzr,CVS,.git,.hg,.svn,.idea,.tox}'
g=git
ga='git add'
.
省略
.
which-command=whence
wyy=/Applications/NeteaseMusic.app/Contents/MacOS/NeteaseMusic

查看单独命令的别名

liaijie@Silence  ~  alias c
c=clear

参考文章:
alias命令_Linux alias命令:给命令定义别名

你可能感兴趣的:(Mac,macos,vue.js,前端)