instpkg cleanup
[cmdllinux.git] / scripts / run_on_cpu_usage
blob21df3f3914624927b6a917dad15567829eff04fa
1 #! /bin/sh
3 [ -z "$1" ] && exit 1
4 #CMD=`echo "$@" | sed -n 's/.*[[:space:]]\+--[[:space:]]\+\(.*\)/\1/p'`
5 #[ -z "$CMD" ] && exit 1
6 #procname=`echo "$@" | sed 's/[[:space:]]\+--[[:space:]]\+.*//'`
8 echomatch()
10 echo -ne "@"
11 for i in $(seq 1 $NUM); do
12 echo -ne "[3-9][3-9]@"
13 done
16 CMD="$@"
18 CNT=1
19 NUM=3
21 MATCH=`echomatch`
23 CPUP="@"
24 while true; do
25 CPU=`_cpu_usage2 -n`
26 [ "$CPU" = 100 ] && CPU=99
27 [ "${#CPU}" = 1 ] && CPU="0$CPU"
28 BUFNUM=`echo -n "${CPUP//[^@]}" | wc -c`
30 if [ "$BUFNUM" = "$(expr $NUM + 1)" ]; then
31 TMP=${CPUP:1}
32 CPUP="@${TMP#*@}${CPU}@"
33 else
34 CPUP="${CPUP}${CPU}@"
37 [ "${CPUP//$MATCH/}" != "${CPUP}" ] && $CMD
39 [ "$CNT" = "$NUM" ] && CNT=1 || CNT=`expr $CNT + 1`
40 #$(( $CNT + 1))
41 sleep 0.6
42 done