我正在寻找为我的工作目录设置一个别名,它可以随着我改变上下文而改变,我试图找到一些足够短的东西作为替代品~
。如果别名可以有一个字符名称,我会被粉红色。喜欢cd %
什么?分配别名%
似乎不起作用。
我已经尝试寻找变量名称的要求,但我找不到任何。我不知道这是不是内置的shell,我不可能是第一个想要这样做的人。
我正在使用zsh,但是我标记了bash,以防两个shell中都有可能。
我正在寻找为我的工作目录设置一个别名,它可以随着我改变上下文而改变,我试图找到一些足够短的东西作为替代品~
。如果别名可以有一个字符名称,我会被粉红色。喜欢cd %
什么?分配别名%
似乎不起作用。
我已经尝试寻找变量名称的要求,但我找不到任何。我不知道这是不是内置的shell,我不可能是第一个想要这样做的人。
我正在使用zsh,但是我标记了bash,以防两个shell中都有可能。
Answers:
zsh
提供了几种设施来获得你想要的东西,但我能想到的最接近的是:
alias -g %=/path/to/whereever
这将替换%
命令内任何位置的路径。你也可以尝试:
alias '%'='cd /path/to/whereever'
现在%
是一个直接更改到该目录的命令。还有
hash -d work=/path/to/whereever
哪个可以让你~work
用来引用那个目录。
我不能说zsh,但对于bash,别名仅用于不是参数的命令。
你可能想写一个函数:
cdw () {
case $(pwd) in
*/some/dir) cd ../work ;;
*/some/other/dir) cd ~/tmp ;;
esac
}
$(pwd)
不$PWD
呢?
x
?或者一个数字1
呢?