Shellscript alle 10 sekunden ausführen?
Hi,
Gibt es eine Möglichkeit, ein Shellscript alle 10 Sekunden auszuführen? Bei crontab geht es ja nur minütlich.
Lg GolanX
6 Antworten
![](https://images.gutefrage.net/media/default/user/9_nmmslarge.png?v=1551279448000)
Falls du systemd hast, kannst du eine neue .service-Datei in /etc/systemd/system erstellen:
[Unit]
Description=Irgendeine Beschreibung
[Service]
ExecStart=/pfad/zum/script.sh
User=Nutzer, mit dem das Script ausgeführt werden soll
Type=simple
Restart=always
RestartSec=10
[Install]
WantedBy=multi-user.target
Anschließend den Dienst aktivieren und starten:
systemctl enable DIENSTNAME
systemctl start DIENSTNAME
![](https://images.gutefrage.net/media/default/user/9_nmmslarge.png?v=1551279448000)
![](https://images.gutefrage.net/media/default/user/8_nmmslarge.png?v=1551279448000)
Weiteres Shell-Skript, welches alle 10 Sekunden das Skript startet.
![](https://images.gutefrage.net/media/default/user/9_nmmslarge.png?v=1551279448000)
![](https://images.gutefrage.net/media/user/guenterhalt/1444744799_nmmslarge.jpg?v=1444744799000)
wenn es auch eine andere Shell sein darf, dann benutze die tclsh
#!/bin/bash
# \
exec tclsh "$0" "$@"
danach z.B.
while {1} {puts Time=[clock format [clock seconds] -format %S]
after 10000
}
die 10000 ist die Zeit im ms bis zum Wiederaufruf der Ausgabe puts ...
clock format .... ist nur ein Beispiel, um zu zeigen, dass immer 10 Sekunden vergehen.
![](https://images.gutefrage.net/media/user/geri3d/1445246679564_nmmslarge__92_208_1652_1652_70c8a924950b847ddd012ca7a0648a93.jpg?v=1445246680000)
Möglicherweise liegt es an einem Designfehler, dass dein Shellshript alle 10 sec ausgeführt werden muss.
Wenn man wüsste, was du vorhast gäbe es vielleicht andere Lösungen.
![](https://images.gutefrage.net/media/default/user/9_nmmslarge.png?v=1551279448000)
Mein raspi verliert die inetverbindung unregelmäßig Wenn ich networkmanager neustarte gehts wieder also benutze ich n script falls ping fehlschlägt networkmanager neustarten
Lg
![](https://images.gutefrage.net/media/user/GedankenGruetze/1677014920005_nmmslarge__49_150_809_809_8f46fb25eaccf9be7f3dd11d89c5bce2.jpg?v=1677014921000)
Du kannst doch den Inhalt des Skriptes in eine Schleife packen, sie ausführen und dann am Ende 10 Sekunden warten, oder geht das nicht?!
![](https://images.gutefrage.net/media/user/GedankenGruetze/1677014920005_nmmslarge__49_150_809_809_8f46fb25eaccf9be7f3dd11d89c5bce2.jpg?v=1677014921000)
#!/bin/bash
while :
do
IRGENDEINEN Blödsinn
sleep 10
done
In der Whileschleife wird also irgendwas gemacht und dann 10 Sekunden geschlafen!
Danke probier ich später mal aus