我有一个bash脚本:my.sh
为什么我的bash脚本被阻塞?
#!/bin/bash
do_sth()
{
sleep 5
}
main()
{
do_sth >/dev/null &
echo do sth in background ...
}
if [ "$1" = "1st_way" ]; then
main
elif [ "$1" = "2nd_way" ]; then
main >/dev/null
fi
以下命令立即返回
./my.sh 1st_way | cat
但是,持续5秒
./my.sh 2nd_way | cat
以下命令块我不知道为什么它是阻塞在第二种方式中持续5秒。