Как проверить вещи в разные промежутки времени в контролирующем linux скрипте? - PullRequest
0 голосов
/ 24 апреля 2020

Я должен проверить, сколько пользователей используют разные программы на сервере в разные промежутки времени.

Мне нужно:

  * display how many users are using vim and joe in every 5 seconds

  * when and what was the record usage of vim and joe in every 1 minute (among the 5 seconds long checks) 

  * when and what was the record usage of these programs since the startig of the script (using the data of checks in every 5 seconds)

  * comparing to the average usage of vim and joe in the last 1 minute, this time the usage increased or decreased

Я могу использовать команду сна, таким образом Я могу проверять эти вещи каждые 5 секунд, но как я могу проверять все остальное каждые 1 минуту?

Вот мой код:

rekordjoe=-1
rekordvim=-1
while :
do
        w | grep -e 'vim' -e 'vi' | sort -u -k1,1  | cut -d' ' -f1 > vimusers
        vim=`wc -l vimusers | cut -d' ' -f1`
        echo how many vim users: $vim

         w | grep -e 'joe' | sort -u -k1,1  | cut -d' ' -f1 > joehasznalok
        joe=`wc -l joehasznalok | cut -d' ' -f1`
        echo how many joe users: $joe

        if [ $vim -gt $rekordvim ]
        then
        $rekordvim=$vim                                                                                                                                                                                                          
        fi   

        if [ $joe -gt $rekordjoe ]
        then    
               $rekordjoe=$vim
        fi
        sleep 5
done

Как я могу проверить некоторые вещи в каждой минуте, а эти каждые 5 секунд?

...