如何将 poweroff 与 git push 绑定?

如何将 poweroff 与 git push 绑定?

我住在一个偏远的地方,互联网很少。

每当我这样做时,sudo poweroff我也想尝试git push一下。如果推送失败,则中止关闭,否则继续关闭。

如何在不修改二进制文件的情况下实现这一目标?

答案1

以下是同一主题的一些替代方案。 All 创建一个名为 的命令,如果推送成功,gitoff该命令将执行git push后面的命令。sudo shutdown -h now

alias gitoff='git push && sudo shutdown -h now'

gitoff () {
    git push && sudo shutdown -h now
}

gitoff () {
    if git push; then
        sudo shutdown -h now
    fi
}

gitoff () {
    if git push; then
        sudo shutdown -h now
    else
        echo >&2 'git push failed, no shutdown'
    fi
}

答案2

您可以将命令包装在 shell 函数中,例如:

function gitpushoff() {
    if git push origin            # if this command succeeds, shutdown
    then
        sudo shutdown -h now
    else
        echo "git push failed: exit code [$?] Aborting shutdown..."
    fi
}

相关内容