如何在VS Code远程SSH终端中实现nano命令自动切换执行code或nano?
实现nano命令的智能替换:优先调用VS Code的code编辑器
需求背景
在不同Linux服务器的远程SSH终端会话中,VS Code的code编辑器并非总能使用,经常出现记错命令的情况——有code可用时输入了nano,在只有nano的环境又输入了code。需要实现输入nano时自动判断:若code可用则执行code,否则执行原生nano。
可行方案
将以下自定义函数添加到你的Shell配置文件(如~/.bashrc、~/.zshrc)中,保存后执行source ~/.bashrc(对应你的配置文件)重新加载即可生效:
function nano() { if [[ $(type -t code) = "file" ]]; then code "$@" else command nano "$@" fi }
代码说明
type -t code:检测code命令的类型,返回file代表该命令是可执行文件(即code可用)code "$@":将输入的所有参数传递给code,保持和原生nano一致的使用逻辑command nano "$@":用command前缀避免递归调用自定义函数,确保执行系统原生的nano,同时传递所有参数
内容的提问来源于stack exchange,提问作者byman64
相关产品推荐
相关产品推荐

