Verzeichnis dauerhaft überprüfen und Ersetzung in .XYZ files

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
Mustang51
Beiträge: 5
Registriert: 05.02.2014 08:46:27

Verzeichnis dauerhaft überprüfen und Ersetzung in .XYZ files

Beitrag von Mustang51 » 11.02.2014 13:38:10

Hallo,

momentan starte ich mittels crontab jede Minute ein Skript, welches das Verzeichnis /beispiel auf .XYZ Dateien überprüft und wenn es solche Dateien findet, dann nimmt es dort eine Ersetzung mittels "sed" durch (bestimmten Textabschnitt ersetzen).

Code: Alles auswählen

workdir=/beispiel
for f in $workdir/*.XYZ
 do
  if [ -f "$f" ];then
   sed -i '/SID = /s:altertext:RICHTIG:g' $workdir/*.XYZ
   break
  fi
done
Die Zeitspanne von 1min ist jedoch ineffektiv, denn wenn jemand die .XYZ Datei abruft/verarbeitet *bevor* der Inhalt in dieser Datei umgeschrieben wurde, dann läuft die jeweilige Applikation auf Fehler und verschiebt die Datei in einen anderen Ordner und benennt sie auch um in error_originalname.XYZ

Nun habe ich mir überlegt, einen einzigen Prozess "einmalig" zu starten, der quasi eine Endlosschleife abarbeitet. In dieser Schleife soll dann die Überwachung des Pfades /beispiel und Prüfen auf Vorhandensein von .XYZ Dateien stattfinden. Somit würde der Prozess ja ständig laufen, und just in diesem Moment wo eine .XYZ Datei in den Ordner /beispiel landet, wird die Ersetzung durchgeführt. Wäre das sinnvoll oder auch nicht so gut? Wie könnte ich das lösen?

newdeb
Beiträge: 134
Registriert: 03.02.2011 11:11:21
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Frankfurt

Re: Verzeichnis dauerhaft überprüfen und Ersetzung in .XYZ f

Beitrag von newdeb » 11.02.2014 13:50:29

Schau dir mal die Debianinotify-tools an.

Mustang51
Beiträge: 5
Registriert: 05.02.2014 08:46:27

Re: Verzeichnis dauerhaft überprüfen und Ersetzung in .XYZ f

Beitrag von Mustang51 » 11.02.2014 13:52:18

habe mir das entsprechende Wheezy inotify-tools Paket angeklickt. Kannst du mir vielleicht kurz erklären, ob es noch weitere Pakete ausser dieses benötigt und wie das Prinzip funktionieren würde? Muss ich wirklich extra für dieses kleine Vorhaben ein extra Paket (wie das hier genannte) installieren? danke für den Tip

Benutzeravatar
Phineas
Beiträge: 354
Registriert: 20.06.2012 20:26:19

Re: Verzeichnis dauerhaft überprüfen und Ersetzung in .XYZ f

Beitrag von Phineas » 11.02.2014 14:54:18

Ich würde inotifywait benutzen. Schöne Beschreibung und Beispiele: http://wiki.ubuntuusers.de/inotify?high ... notifywait

Antworten