【发布时间】:2021-08-31 22:36:54
【问题描述】:
我有一个 bash 脚本,它在 for 循环中(在超时条件下)调用另一个 bash 脚本,格式如下:
#!/bin/bash
trap 'trap - SIGTERM && kill 0' SIGINT SIGTERM EXIT
INNER_SCRIPT_PATH="./inner_script.sh"
for file in "$SAMPLEDIR"/*
do
if [[ "${file: -4}" == ".csv" ]]; then
CSVPATH="$file"
CSVNAME=${CSVPATH##*/} # extract file name
CSVNAME=${CSVNAME%.*} # remove extension
timeout -k 10s 30m bash "$INNER_SCRIPT_PATH"
fi
done
wait
按 Ctrl-C 不会退出所有进程,我感觉我在这里调用内部 bash 脚本的方式可能有问题(尤其是超时)。非常感谢您就如何改进这一点提供反馈!
【问题讨论】: