Za pomocą skryptu, który operuje na sumach kontrolnych, można monitorować wybrany plik. Jeśli monitorowany plik się zmieni lub zostanie zapisany, skrypt automatycznie go uruchomi, dzięki temu nie trzeba za każdym razem uruchomiać go podczas kodowania.

Istnieją programy, które wykonują to samo, takie jak entr czy inotifywait, niesety trzeba je doinstalować, o ile nie chcemy używać ich dodatkowych funkcji, można korzystać z tego skryptu.

Jako parametr należy podać nazwę pliku, który chcemy monitorować.

#!/bin/bash

# zmienna TIME określa co ile sekund jest sprawdzany skrypt
TIME=1

if [ $# -lt 1 ]; then
    echo "Podaj nazwę skryptu do obserwacji."
    exit
fi

SCRIPT=$(readlink -f "$1")
echo "Zaczynam monitorować plik $SCRIPT"

SUM_OLD=$(md5sum "$SCRIPT")

while true
do
    SUM_NEW=$(md5sum "$SCRIPT")

    if [ "$SUM_NEW" != "$SUM_OLD" ]; then
        "$SCRIPT"
        SUM_OLD=$SUM_NEW
    fi
    sleep $TIME
done

wstecz

Date: 2020-10-21T21:56:55+02:00