Automatische Script ausführung (Daemon)

mystic2k

New Member
Hallo,

ich suche/bräuchte ein kleines Script das permanent im Hintergrund läuft und .sh Dateien sobald sie in einem Ordner sind ausführt und danach wieder löscht. Sprich sobald sich in /home/scripte eine Datei befindet z.B mit dem namen script.sh, soll diese ausgeführt werden und danach gelöscht werden. Kann mir wer helfen?
 
habe es nun ansatzweise hin bekommen.

#!/bin/bash

pfad=/home/shell/scripts

while true ; do
if test -f $pfad/run.sh ; then
chmod 755 $pfad/run.sh
$pfad/run.sh
rm $pfad/run.sh
fi
sleep 1
done

leider habe ich es noch nicht hinbekommen jede Datei die sich im Ordner befíndet ausführen zu lassen und anschließend wieder zu löschen. Vieleicht hat einer hat noch ne idea und kann den Code ein bischen optimieren.
 
warum ist denn das so wichtig ?
Du führst alles aus mit *.sh und löscht dann einfach alles mit *.sh
* ist hier einfach die wildcard
 
ja das ginge aber ist blöde wenn ein längeres script gerade rein kommt und ein script fertig ist und dadurch alles löscht...
 
Code:
#!/bin/bash

pfad=/home/shell/scripts
scripts=`ls $pfad | grep .sh`

for script in $scripts; do
cd $pfad
chmod 755 $script
./$script
rm $script
sleep 1
done
 
danke klappt super nur leider fehlt mir ne while schleife das die ganze zeit das programm mit einem sleeper von 1 abgearbeitet wird und ständig prüft ob neue dateien im ordner vorhanden sind.
 
... und zu guter letzt (eigentlich eher noch vor dem Einsatz des Scripts) solltest Du Dir Gedanken über die Auswirkungen auf die Sicherheit, die der Einsatz eines solchen Scripts hat, machen. Einem bestimmten Benutzer beliebige Dinge unter zu schieben, die der dann blind ausführt, will man normalerweise nicht. Mir fallen da gleich ein paar blöde Sachen ein :D
 
Back
Top