Biesterfeld: Dateien automatisch umbennen

Beitrag lesen

Hej,

/<upload>/<[0-9]{5}>/data.<endung>, das Download-Skript sucht aber nach /<upload>/<[0-9]{5}>/data

siehe zweites Beispiel im zweiten Posting

Was mir wieder ewiges rumprobieren abgenommen hat. Vielen Dank.

  • die Dateien haben "handelsübliche" Endungen, d.h. es ist eine bekannte Menge.

Wieso wäre das wichtig? Ich dachte da an einen einfachen Substring des Dateinamens bis zum letzten Punkt exklusive.

Äh, ja, wenn es nur einen einzigen Punkt gibt, dann geht das.
Aber wenn es zwei Punkte gibt, was dann?
Erste Runde: erste Endung wird abgeschnitten
Zweite Runde: zweite Endung wird abgeschnitten

Au Backe da hab ich gar nicht dran gedacht.

Also: Gibt es nun genau einen Punkt, dann brauchen wir nur diesen zu finden.
Da ich das CMS nicht kenne, Du aber, solltest Du diese Information liefern können.

Ach ne ... richtig, da die Dateinamen alle data.<endung> als Endung haben, haben wir genau einen Punkt. Geht also doch.

Eine Minute Unerreichbarkeit des Servers oder der Datei nach Upload? Falls du zweites meintest, wäre dies auch das Intervall welches du für den Cron-Job vorschlägst? Eine Minute?

Zweites. Eine Minute ist das kürzeste Intervall, dass Du beim Cron-Job nutzen kannst.

Achja, richtig.

Gibt es unter Linux Tools, denen man sowas beibringen kann?
Hmmm, schon klar ,-) Ich meinte auch nicht, ein 'tool' welches mir den Dateinamen umbenennt, sondern dachte da eher an sowas wie einen "Listener", dem ich sagen kann dass er ein bestimmtes Verzeichnis auf Änderungen überwachen soll und bei einer Änderung instantan ein von mir anzugebenes Skript/Einzeiler lostritt.

Sorry, aber was macht dieser "Listener" anderes, als das Dateisystem zu befragen, ob was hinzugekommen ist? Nichts.

Nuja, er würde darauf warten vom Dateisystm ins Ohr geflüstert zu bekommen "Es hat sich was in Verzeichnis XY geändert". Hab ich mir halt so gedacht. Hab ich wohl falsch gedacht. :-)

Natürlich könntest Du auch einen kleinen Prozess als Dämon im Hintergrund laufen lassen, der in einem von Dir vorgegebenem Intervall die betroffene Verzeichnishierarchie auf neue Dateien überprüft und diese dann entsprechend umbenennt, wieder ein Intervall schläft, ...

Was doch identisch mit einem Cron-Job wäre, oder nicht?

Nein, der Cron-Job wird im vorgegebenen Takt aufgerufen, der Daemon hingegen läuft die ganze Zeit durch.

So, das ist genau das was ich brauche. Jetzt fehlt mir nur noch ein kleines Dateiwissen: Muss ich den Schlaf-Wach-Rythmus eines solchen Dämonskriptes selber verwalten? Oder gibt es so eine Art Superdämon, der das ganze besser verwaltet?

Ein Daemon kann halt feiner dosiert werden, das muss doch nicht hysterisch sein.

Z.B. so:

  
#!/bin/bash  
while true ; do for i in $(find ./ -regex .*data\..*) ; do mv $i ${i%.*}; done; sleep 2s; done  

?

Vielen Dank für die Hilfe
Biesterfeld

--
Art.1: Et es wie et es
Art.2: Et kütt wie et kütt
Art.3: Et hätt noch immer jot jejange
Das Kölsche Grundgesetz