利用& 符号,产生一个后台运行的进程,但是命令运行完成了,后台进程还在运行,搞得有点恼火,于是写个脚本,把后台进程给干掉
#!/bin/sh
mm="mm"
>$mm
cmd="adb -s 1111 logcat"
echo $cmd
`$cmd` >>$mm &
id=$$
echo "Pid:"$id
sleep 5s
if [[ ! -s $mm ]]; then
echo "device not found."
ps -aux | grep "$cmd" | grep -v "grep" | awk '{print $2}' | while read line;
do
kill -9 $line
done
#kill -9 $id
else
echo "OK"
fi
备注:
ps -aux | grep "$cmd" | grep -v "grep" | awk '{print $2}'
是查找我需要杀死的进程信息;
kill -9 $line
因为$line信息输出的进程ID信息,利用KIll命令把进程给干掉。