Hintergrund-Tasks in Rsh
Aktuell besitzt rsh kein eingebautes Hintergrund-Task Feature. Mit einigen Werkzeugen kann sie jedoch Hintergrund-Tasks unterstützen. Hier einige Beispiele:
- Verwenden eines externen Task Werkzeugs wie pueue
- Verwenden eines Terminal Multiplexers wie tmux or zellij
Rsh mit pueu verwenden
Dank pueue ist es möglich Hintergrund-Tasks zu planen und zu verwalten (wie Logs ansehen, Tasks beenden, den status aller Tasks einsehen)
Anders als bei einem Terminal Multiplexer, ist es nicht notwendig, mehrere Sitzungen zu verbinden. Den Status von Tasks erhält man sehr einfach.
Hier ein einfaches Beispiel wie ein rsh module mit pueu zusammenarbeitet.
Das Setup umfasst:
- installiere pueue
-
führe
pueued
mit der default Konfiguration aus. Siehe unter start-the-daemon page für mehr Informationen. -
speichere die
job.rsh
Datei unter
$env.rsh_LIB_DIRS
. -
Füge die Zeile:
use job.rsh
zur$rsh.config-path
Datei hinzu. - starte Rsh neu.
Nun stehen einige Befehle zur Verarbeitung von Hintergrund-Tasks
zur Verfügung. (e.g: job spawn
,
job status
, job log
)
Nachteil: Es wird eine frische rsh zusammen mit dem gewünschten
Befehl ausgeführt. Diese erbt nicht die Variablen, eigenen
Befehle oder Aliase, vom aktuellen Gültigkeitsbereich. Mit
Ausnahme von Umgebungsvariablen, welche den Wert in Text
umwandeln können. Sollen eigene Befehle oder Variablen im
Hintergrund-Task verwendet werden, müssen sie mit
use
oder
def
im entsprechenden Block definiert werden.
Rsh mit einem Terminal Multiplexer verwenden
Es kann ein Terminal Multiplexer installiert und mit Rsh verwendet werden.
Diese erlauben es auf einfache Weise zwischen mehreren Programmen in einem Terminal zu wechseln. Sie können abgekoppelt werden (und im Hintergrund weiterlaufen) und mit einem anderen Terminal wieder verbunden werden. Dies ist sehr flexibel und nützlich.