Ausführen eines bash-Skript bei der Erstellung der Datei

Ich bin auf der Suche zu schreiben, ein kleines bash-script an, wenn es gestartet wird, sehen Sie ein Verzeichnis für alle neu erstellten Dateien. Wenn eine neue Datei angezeigt wird, ich will seine Anwesenheit auslösen, ein zweites Skript zu laufen.

Ich sehe das verwendet wird zum auslösen der Komprimierung vor kurzem digitalisierten Videos, und fügen Sie es ein Protokoll des aufgenommenen Filmmaterials.

Derzeit mein code sieht wie folgt aus:

#!/bin/sh

##VIDSTAT is a global variable coming from a parent script.
##proj is the ingestion directory coming from a parent script
proj=$1

dir="/home/$USER/data/movies/$proj"
dirlist=$(ls $dir)


while { $VIDSTAT -eq 1 }:
do
    for mov in $dirlist
    do
        if [ "$(( $(date +"%s") - $(stat -c "%Y" $mov) ))" -lt "5" ]
        then
        ~/bin/compressNlog.sh $mov
        fi
    done
done

Gibt es ein einfacher/sauberer/weniger Speicher-intensive Art und Weise, dies zu tun?

BEARBEITEN ich werde mich ändern, die Einnahme-Verzeichnis pro-capture-session. Ich habe den code entsprechend angepasst

  • Seien Sie vorsichtig. Das Skript kann ausgeführt werden, bevor die Anwendung fertig ist, schreiben Sie die Datei, und es komprimiert eine unvollständige Datei.
Schreibe einen Kommentar