【linux】使用alias简化指令

一、背景

由于办公的mac电脑的某些权限限制,所以没有安装nvm,在切换node版本的时候,需要通过切换PATH指向的包路径去切换版本。

但是这样每次要进zshrc文件去手动注释掉不需要版本的path,来启用其他版本,并且需要重启控制台很麻烦。QAQ

二、alias设置指令别名

如果控制台是bash的请配置在~/.bashrc里面;zsh控制台配置在~/.zshrc

后来发现可以开启一个默认的node PATH配置,然后再对其他版本使用alias对指令进行别名设置,然后直接调用该别名来切换版本。

例如:

bash 复制代码
alias n16="export PATH=$PATH:/Users/xxxx/Programs/node/node-v16.18.0-darwin-arm64/bin" 
export PATH=$PATH:/Users/xxxx/Programs/node/node-v18.18.2-darwin-arm64/bin 

**但是!**这样设置完,调用n16你会发现仍然没有切换过去,还在node 18默认版本中

⚠️这是因为 **PATH中存储着多个路径的拼接** ,当调用n16时,由于" PATH:/ "拼接在了前面,所以会优先匹配到node18的路径就++停止了++。

🌟正确做法

bash 复制代码
alias n16="export PATH=/Users/xxxx/Programs/node/node-v16.18.0-darwin-arm64/bin:$PATH" 
export PATH=$PATH:/Users/xxxx/Programs/node/node-v18.18.2-darwin-arm64/bin 

强制将node16路径拼接在前面,把 $Path 拼接在路径最后

注意,由于控制台可以视为一个应用程序,所以每次打开会++重新执行zshrc++切回到默认的node18版本~

相关推荐
xywww1683 小时前
大模型 API 选型实战:GPT、Gemini、Claude 接入时该看哪些指标?
运维·服务器·人工智能·python·gpt·langchain
欢呼的太阳7 小时前
数据库设计Step by Step (10)——范式化
服务器·数据库·oracle
夜雪一千8 小时前
Python enumerate() 函数完整详解:遍历同时获取索引,告别手动计数
服务器·windows·python
donoot8 小时前
Linux系统下图书馆级电子书全自动标准化分类整理完整实施方案
大数据·linux·运维·电子书管理
随风一样自由8 小时前
【前端独角兽】刚进入前端领域的前端开发用jQuery还是Vue3?
前端·javascript·vue3·jquery
IMPYLH9 小时前
HTML 的 <data> 元素
前端·html
Felix-lxd9 小时前
Ubuntu 22.04 配置 Nginx
linux·nginx·ubuntu
YHHLAI9 小时前
[特殊字符] 面试中的 Promise —— 从入门到精通
前端·javascript·面试
大E帝国子民110 小时前
MacOS 安装Seismic Unix
服务器·macos·unix
Tim_Van10 小时前
在 CentOS 7 中安装 Chromium 的完整步骤
linux·运维·chrome·centos