1
#!/usr/bin/env bash

# trap ctrl-c and call ctrl_c()
trap ctrl_c INT

function ctrl_c() {
    echo
    echo "** Trapped CTRL-C: Skipping Current Task **"
    echo
}


function ping1 () {
    sudo ping 8.8.4.4
    sudo ping 1.1.1.1
}
function ping2 () {
    sudo ping 8.8.8.8
}
function ping3 () {
    sudo ping 8.8.4.4
}

ping1
ping2
ping3

我的问题是,当我执行 ctrl c 时,它只停止正在执行的行,我希望它跳过整个函数并继续执行下一个函数

一个例子是当我在 ping1 并且sudo ping 8.8.4.4正在执行第一个 ping 命令时。当我按下控制 C 时,我希望脚本继续执行 ping2 而不是执行sudo ping 1.1.1.1

4

0 回答 0