在发现 'trash-put' 之后,我想在大多数情况下让自己使用它而不是 'rm'。如果我只是别名它可能会让我在没有我的配置文件的机器上感觉太安全了,所以我想出了以下内容(在我的 .zshrc 中):

function rm() {
    local go_ahead
    read -q "go_ahead?Are you sure you don't want to use rms? (y/n)"
    echo ""
    if [[ "$go_ahead" == "y" ]]; then
        /bin/rm $*
    fi
}
alias rms='trash-put'

它似乎有效,但我对 zsh 脚本编写没有很多经验......这是做我想做的好方法吗?

谢谢
彼得

最佳答案

那么,为什么要创建一个函数和一个别名而不是简单的:

alias rm="rm -i"

或以其他方式转换您的 rm 使其成为:
function rm() {
    local go_ahead
    read -q "Are you sure you don't want to use trash-put? [y/N]"
    echo ""
    if [[ "$go_ahead" = "y" ]]; then
        /bin/rm $*
    else
        /usr/bin/env trash-put $*
    fi
}

所以如果你不说 trash-put ,它会运行 y

关于zsh - 在 zsh 中确认 rm,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21453185/

10-13 05:08