#!/bin/bash ini=/var/local/emhttp/diskload.ini tmp=/var/local/emhttp/diskload.tmp declare -a reads writes # t = poll interval in seconds t=2 # initialize array values upon first start stats=($(awk '/(sd[a-z]*|nvme[0-9]*n1|vd[a-z]*) /{print $3,$6,$10,$4,$8}' /proc/diskstats)) c=0; s=${#stats[@]} for ((i=0;i>$tmp reads[c]=${stats[i+1]} writes[c]=${stats[i+2]} ((c++)) done mv -f $tmp $ini sleep $t done