小编Nat*_*han的帖子

为什么 zsh 在这些函数中用下划线替换连字符?

我在 zsh 和 bash 控制台中获得了以下函数别名:

compose() {
  docker-compose $*
}

run() {
  compose "run --rm app $*"
}

rails() {
  run "rails $*"
}
Run Code Online (Sandbox Code Playgroud)

在 bash 中,运行rails c通过 docker-compose 成功启动了 Ruby on Rails 控制台。

在 zsh 中,运行会rails c导致命令未找到错误,其中连字符被下划线替换:

? rails c
No such command: run __rm app rails c
Run Code Online (Sandbox Code Playgroud)

我的 zsh 版本:

? zsh --version
zsh 5.6.2 (x86_64-apple-darwin18.0.0)
Run Code Online (Sandbox Code Playgroud)

zsh function

0
推荐指数
1
解决办法
456
查看次数

标签 统计

function ×1

zsh ×1