各位 Shell 高手,
我有一个 Bash shell 脚本,在其中启动了一个后台函数 foo()
,用于显示进度条以展示枯燥而耗时的命令的执行进度:
foo()
{
while [ 1 ]
do
#massively cool progress bar display code
sleep 1
done
}
foo &
foo_pid=$!
boring_and_long_command
kill $foo_pid >/dev/null 2>&1
sleep 10
现在,当foo
死亡时,我会看到以下文本:
/home/user/script: line XXX: 30290 Killed foo
这完全破坏了我的进度条显示的壮观效果,否则就会非常酷。
我该如何摆脱这个消息?
while [ 1 ]; do
可以写成while :; do
。 - TrueY