Bash Shellscripte

» home «

Möchten Sie einige Befehlsabläufe automatisieren, dann kann Ihnen das Shellscript oder auch Bashscript deutlich unter die Arme greifen.

Das Shellscript nimmt Ihnen viel Arbeit ab wenn es darum geht immer wieder die selben Befehle einzutippen. Legen Sie einfach mit nano start.sh eine solches Script an und beginnen Sie die erste Zeile des Scripts mit dem folgenden Eintrag:

001  #!/bin/bash
...

Durch diesen Eintrag erkennt LINUX welchen Interpreter es für die Ausführung des Scriptes nutzen soll - bash. Tragen Sie in den folgenden Zeilen einfach die gewünschten Befehle der Reihe nach ein. Beispielsweise habe ich eine Kamera an meinem Raspberry angeschlossen die alle 5 Sekunden ein Foto schießet und dieses Bild via Internet (lokales WLAN) überträgt.

001  #!/bin/bash
002  raspistill -sa -100 -t 3000000 -tl 5000 -o /home/pi/weborf/picture.jpg &
003  weborf -b /home/pi/weborf -I picture.jpg

Das Script startet in Zeile 002 eine Timelapseaufnahme alle 5s als Hintergrundprozess (&) und speichert jedes Foto als picture.jpg (das Bild wird alle 5s erneut überschrieben). In der Zwischenzeit startet der Webserver weborf in Zeile 003 und interpretiert die Bilddatei picture.jpg als Index-Datei und zeigt das Foto sofort an wenn ich http://Pi3A:8080 in meinem Browser am Smartphone eingebe. Der Hostname des Raspberry lautet in diesem Projekt Pi3A.

Damit das Script startbar wird, muss es als ausführbar gekennzeichnet werden, die erledigt der Befhel chmod an der Kommandozeile. Theoretisch könnten Sie auch das sh weglassen, Extensionen sind für LINUX meist ohne Bedeutung.

chmod +x start.sh

Die Befehlskette ist somit immer über das Script start.sh ausführbar zum Beispiel so (probieren Sie es zuvor von Hand aus bevor Sie es irgendwo im System fest einbinden):

./start.sh

oder

/home/pi/weborf/start.sh

Soll das Script bei jedem Start des Raspberrys ausgeführt werden, dann sollten Sie es in die /etc/rc.local eintragen, das geht so:

sudo nano /etc/rc.local

Oliver Lohse   •  25.Apr.2020

Navigation


home
Omega 2
ESP32 NodeMCU
Arduino
Raspberry Pi
Python
PHP

Es geht um den heißem Scheiß über den alle reden - IoT (das Internet der Dinge). Doch zunächst der rechtliche Teil auf dieser rein privat betriebenen Webseite.

Die Webseite verwendet keine Cookies oder sonstigen Tracking-Tools, um das Leserverhalten zu speichern.

NodeMCU


Die Welt der IoT, der NodeMCU, ARDUINO, ESP32 und Raspberry Pi - News, Tipps, Tricks, Tutorials und Beispiel-Codings rund um ESP32, ARDUINO, Raspberry Pi und co. für eigene IoT-Projekte.

Python 3.0 installieren


Auf dem Raspberry Pi 3 ist Python 2.x vorinstalliert und reicht für die meisten Dinge aus, doch Python 3 besitzt viele Änderungen, daher sollten Sie Python 3.x auf dem Pi installieren.


© by O.Lohse • Impressumhome