Linux Script/Tool/Hilfe

08/06/2016 07:32 crack00r#1
Hallo, ich suche jemanden der mir dabei hilft folgendes zu bewerkstelligen.

Linux Root-Server

Ein Ordner bekommt die ganze Zeit andere Ordner mit Files rein geschoben.
Sobald ein File drin ist, soll es gleich wieder verschoben werden.
Das Verschieben dauert in der Regel 2-3min.

Ich habe bereits hier mit versucht das ganze umzusetzen, allerdings öffnet er hier immer nur 1 Transfer gleichzeitig, also er verschiebt das nächste File erst, wenn das davor abgeschlossen ist.
Code:
#!/bin/bash
FOLDER="/home/plex/toupload"
inotifywait -m $FOLDER -e create -e moved_to |
        while read path action file; do
                echo "The file '$file' appeared in directory '$path' via '$action'"
                acd_cli ul $FOLDER/"$file" /Media/Unsorted/
                rm -rf $FOLDER/"$file"
        done
Ich möchte allerdings das der Ordner der rein kopiert wird, sofort verschoben wird.

VOm Prinzip:

Ordner wird überwacht =>
Ordner 1 wird rein kopiert => Das Script merkt das und verschiebt ihn sofort was 1sec - 5min. dauert, je nach Größe.
Wärend prozess 1 läuft wird ein der nächste Ordner rein kopiert, auch hier soll er sofort anfangen zu verschieben.

Es ist egal ob dann auf ein mal 5 oder 10 Prozesse gleichzeitig offen sind, die gerade verschieben.

Ich komm mit gleichzeitigem verschieben einfach auf eine höhere Bandbreite als wenn File für File hintereinander wech verschoben wird.




Gegenleistung 25€ PP
08/07/2016 17:48 xCaptain#2
Probier mal entweder hinter dem verschieben Befehl ein & zu machen oder den kopier Vorgang an sich in ein neues Skript zu packen und wenn ein Ordner rein kommt öffnet er das verschieben Skript.

Variante 1:
Code:
FOLDER="/home/plex/toupload"
inotifywait -m $FOLDER -e create -e moved_to |
        while read path action file; do
                echo "The file '$file' appeared in directory '$path' via '$action'"
                acd_cli ul $FOLDER/"$file" /Media/Unsorted/ &
                rm -rf $FOLDER/"$file" &
        done
Variante 2:
Code:
FOLDER="/home/plex/toupload"
inotifywait -m $FOLDER -e create -e moved_to |
        while read path action file; do
                echo "The file '$file' appeared in directory '$path' via '$action'"
                /path/to/skript &
        done