jeudi 7 septembre 2017

Bash if condition to check variable for changes over time

I wondering if it's possible to finagle this logic (checking a variable for changes over time and running a loop while true) into a bash if statement condition. I was hoping for something like:

var=$(du -h *flat*.vmdk)
var2=$(sleep 1 ; du -h *flat*.vmdk)

if [[ $var != $var2 ]]; then
while true ; do echo -ne $(du -h *flat*.vmdk)\\r ; sleep 1 ; done
else
echo "Transfer complete"
fi

I've also played with a while loop, rather than an if then with no luck.

while [ $var != $var2 ] ; do echo -ne $(du -h *flat*.vmdk)\\r ; sleep 1 ; done

But I'm seeing that's not possible? Or I'm having issues where things are incorrectly getting expanded. I'm open to any solution, although I am limited by a very basic shell (ESXi Shell) where many common unix/shell tools may not be present.

Aucun commentaire:

Enregistrer un commentaire