gpt4 book ai didi

docker - 为什么 zsh alias 不能正确评估嵌套命令?

转载 作者:行者123 更新时间:2023-12-02 18:53:47 25 4
gpt4 key购买 nike

在我的 ~/.zshrc 中我设置了一个别名

alias dkill="docker kill $(docker ps -q)"

但它实际上并不像命令本身那样运行。

出于某种原因,它尝试将容器名称作为命令执行,而不是将它们传递给 docker kill命令。

Error response from daemon: Cannot kill container: 3f1xxxxx0c4: No such container: 3f1xxxxx0c4
zsh: command not found: 0aexxxxxx913
zsh: command not found: 46acxxxx75cd
zsh: command not found: 20f9xxxxx9c1
zsh: command not found: 63edxxxxc085
zsh: command not found: 6328xxxxfe4d

我应该如何重新定义别名以正确杀死容器

最佳答案

正如@triplee 所说,一旦您定义了别名(当您打开 zsh session 时,容器可能不存在),就会立即评估该命令。

在您的 .zshrc改用函数:

function dkill { docker kill $(docker ps -q) }

或者使用单引号:
alias dkill='docker kill $(docker ps -q)'

关于docker - 为什么 zsh alias 不能正确评估嵌套命令?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49110258/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com