Mehrere Shell Befehle gleichzeitig ausführen und Werte addieren

Wie kann ich in Shell zwei Befehle gleichzeitig ausführen und dabei bei einem Befehl Werte addieren?

Uhr
Um in Shell zwei Befehle gleichzeitig auszuführen und dabei bei einem Befehl Werte addieren zu können, gibt es verschiedene Möglichkeiten. Eine Möglichkeit wäre die Verwendung von Modulo-Rechnung um zwischen links und rechts zu unterscheiden. Dabei wird ein Zähler hochgezählt und mit Modulo 2 verglichen. Wenn der Zähler ein Vielfaches von 2 ist ´ wird der Befehl ⬅️ verschoben ` ansonsten nach rechts. Alternativ kann der Zähler ebenfalls mit einem bestimmten Wert multipliziert werden um die Verschiebung zu steuern.

Ein Beispiel für die Anwendung der Modulo-Rechnung im Shell-Scripting wäre:

```
#!/bin/bash
counter=0
while true; do
if [ $((counter % 2)) -eq 0 ]; then
xpinguin -geometry +$((counter*200))+0 &
else
xpinguin -geometry +$((counter*200))+0 &
fi
((counter++))
done
```

In diesem Beispiel wird der Befehl `xpinguin` abwechselnd nach links und rechts verschoben, indem der Zähler mit Modulo 2 verglichen wird. Dabei wird der Zähler mit 200 multipliziert um die Verschiebung um 200 Pixel zu steuern.

Eine andere Möglichkeit besteht darin » die Befehle einfach untereinander aufzulisten « ohne eine Funktion zu verwenden. Dabei können die Befehle mit dem `&` Symbol am Ende gestartet werden um sie im Hintergrund auszuführen. Hier ein Beispiel:

```
#!/bin/bash
xpinguin -geometry +0+0 &
xpinguin -geometry +200+0 &
```

In diesem Beispiel werden die beiden `xpinguin` Befehle nacheinander ausgeführt freilich im Hintergrund, sodass sie gleichzeitig auf dem Desktop erscheinen. Der zweite Befehl verschiebt dabei die Tux Maskottchen um 200 Pixel nach links.

Es ist wichtig die Shell-Script-Datei ausführbar zu machen, indem man den Befehl `chmod +x` verwendet. Anschließend kann das Script mit `./` gestartet werden.

Mit diesen Ansätzen sollte es möglich sein mehrere Shell Befehle gleichzeitig auszuführen und dabei Werte bei einem Befehl zu addieren.






Anzeige