【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版本~

相关推荐
2401_892070981 天前
【Linux C++ 日志系统实战】LogFile 日志文件管理核心:滚动策略、线程安全与方法全解析
linux·c++·日志系统·日志滚动
lwx9148521 天前
Linux-Shell算术运算
linux·运维·服务器
于慨1 天前
Lambda 表达式、方法引用(Method Reference)语法
java·前端·servlet
石小石Orz1 天前
油猴脚本实现生产环境加载本地qiankun子应用
前端·架构
从前慢丶1 天前
前端交互规范(Web 端)
前端
somi71 天前
ARM-驱动-02-Linux 内核开发环境搭建与编译
linux·运维·arm开发
CHU7290351 天前
便捷约玩,沉浸推理:线上剧本杀APP功能版块设计详解
前端·小程序
GISer_Jing1 天前
Page-agent MCP结构
前端·人工智能
双份浓缩馥芮白1 天前
【Docker】Linux 迁移 docker 目录(软链接)
linux·docker
王霸天1 天前
💥别再抄网上的Scale缩放代码了!50行源码教你写一个永不翻车的大屏适配
前端·vue.js·数据可视化