Scripte ausführen: Unterschied zwischen den Versionen
Geli (Diskussion | Beiträge) K (Geli verschob die Seite Scripts ausführen nach Scripte ausführen, ohne dabei eine Weiterleitung anzulegen) |
Geli (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
||
Zeile 20: | Zeile 20: | ||
oder für Scripte mit Root-Rechten | oder für Scripte mit Root-Rechten | ||
sudo cp test.sh /usr/local/sbin | sudo cp test.sh /usr/local/sbin | ||
==Python Script beim Booten starten== | |||
Ein Script kann beim Booten automatisch gestartet werden. Erforderlich ist ein Eintrag in der Autostart-Datei. | |||
sudo nano /etc/rc.local | |||
Die gewünschte Kommandozeile muss vor dem vorhandenen '''exit 0''' eingefügt werden. | |||
python /home/pi/script.py & | |||
Das '''&''' am Ende der Zeile bedeutet, dass ''script.py'' im Hintergrund ausgeführt wird. Der Bootvorgang wird damit nicht behindert. |
Version vom 4. Februar 2019, 19:18 Uhr
https://www.elektronik-kompendium.de/sites/raspberry-pi/2006091.htm
Diese Beschreibung gilt grundsätzlich für alles Scripte wie Bash-Scripte oder Python-Scripte. Abhängig von der Aufgabe kann das Script mit User- oder Root-Rechten erstellt werden. Also mit User-Rechten
nano test.sh
oder mit Root-Rechten
sudo nano test.sh
Scripte werden sinnvollerweise im Userverzeichnis erstellt.
In der ersten Zeile des Scripts muss abhängig vom Interpreter das richtige "Shebang" eingetragen werden, also
- Bash: #!/bin/bash
- Perl: #!/usr/bin/perl
- Python: #!/usr/bin/python
Vor dem Aufruf des Scripts muss das Script noch "ausführbar" gemacht werden.
chmod +x test.sh sudo chmod +x test.sh (für Scripte mit Root-Rechten)
Abschließend kopiert man das Script in eines der von Linux vorgesehenen Verzeichnisse. Diese Verzeichnisse sind standardmäßig in der globalen Variablen $PATH enthalten. Daher entfällt die Pfadangabe z.B. beim Eintrag in die crontab.
sudo cp test.sh /usr/local/bin
oder für Scripte mit Root-Rechten
sudo cp test.sh /usr/local/sbin
Python Script beim Booten starten
Ein Script kann beim Booten automatisch gestartet werden. Erforderlich ist ein Eintrag in der Autostart-Datei.
sudo nano /etc/rc.local
Die gewünschte Kommandozeile muss vor dem vorhandenen exit 0 eingefügt werden.
python /home/pi/script.py &
Das & am Ende der Zeile bedeutet, dass script.py im Hintergrund ausgeführt wird. Der Bootvorgang wird damit nicht behindert.