我想执行一个脚本,但一旦它开始,我希望它回显 PID,所以我正在执行以下操作:
./dummy.SCRIPT & echo $!
但我也希望它在执行完脚本后回显一些东西,所以我猜它应该看起来像这样:
( ./dummy.SCRIPT & echo $! ) && echo "Task Done!"
但它似乎不起作用,“任务完成!” echo 在 dummy.SCRIPT 启动的同时执行,我做错了什么!?
最佳答案
与其使用命令行执行,不如编写一个小脚本来为您执行该操作。
$ cat monitordummy.sh
#!/bin/bash
./dummyscript &
pidofdummy=$!
while ps -p $pidofdummy > /dev/null
do
sleep 5 # Modify this according to your run time
echo -n "...." # This will be printed on the stdout
done
echo "Task Done for dummyscript"
运行脚本:
$ chmod u+x monitordummy.sh
$ ./monitordummy.sh
关于Linux Bash - 如何使用 ()、&& 和 & 执行以下操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48546426/