Rey*_*rPM 6 bash zsh bash-alias
假设我的 ZSH 配置文件中有以下别名定义:
alias myalias="cd /"
Run Code Online (Sandbox Code Playgroud)
如何myalias
在另一个别名中使用?IE:
alias myaliasone="myalias && cd /usr"
Run Code Online (Sandbox Code Playgroud)
我已经尝试过(使用真正的别名,这个别名只是为了示例目的而伪造的),但没有任何反应,而且我无法根据调试或修复某些内容看到任何错误,有什么想法吗?如果这是在另一个别名中使用别名的正确方法,您知道我如何调试它以便找到根本问题或发生了什么吗?
有两种方法可以做到这一点:
myalias() {
cd /
}
alias myaliasone='myalias && cd /usr'
Run Code Online (Sandbox Code Playgroud)
$aliases
表zmodload -F zsh/parameter p:aliases
alias myalias='cd /'
alias myaliasone='$aliases[myalias] && cd /usr'
Run Code Online (Sandbox Code Playgroud)
请注意,该字符串需要用'
单引号引起来'
,以防止$
其中的参数立即被替换。现在,在替换别名后,当评估命令行时,它们将被替换。