Monday, July 24, 2017

A simple thread manager for a bash/shell scripts

A simple thread manager for a bash/shell scripts. Place your command in place of 'sleep $((30/i))'

    TREG=/tmp/treg
    :> $TREG
    function add_t(){
       echo Starting $1
       echo $1 >> $TREG
    }
    
    function rem_t(){
       echo Done $1
       sed -i /^$1$/d $TREG
    }
    
    function clean(){
       :> $TREG
       exit 1
    }
    
    trap "clean" SIGINT SIGTERM
    
    for i in 1 2 3
    do
       (add_t thread$i;sleep $((30/i));rem_t thread$i)&
    done
    
    while true
    do
       if [[ -s $TREG ]]
       then
          echo Running:
          cat $TREG
       else
          echo All Done.
          break
       fi
       sleep 2
    done

1 comment:

Intel Corporation XMM7360 LTE Advanced Modem in ArchLinux

The required packages are available in ArchLinux User Repository (AUR) so it will be easier if you can use an AUR helper package like yay . ...