Bereiche
News
Rewind
Tipps & Berichte
Forum
Galerie
Journals
Events
Umfragen
Themenwoche
Kleinanzeigen
Interaktiv
Anmelden
Registrierung
Zu allen empfangenen Nachrichten
Suche...
Zur erweiterten Suche
Push-Nachrichten von MacTechNews.de
Würden Sie gerne aktuelle Nachrichten aus der Apple-Welt direkt über Push-Nachrichten erhalten?
Forum
>
Entwickler
>
ZSH: Zweite Session aus shell starten
ZSH: Zweite Session aus shell starten
michimaier
07.02.20
21:49
Hallo miteinander,
ich bastel hier gerade etwas zusammen - tatsächlich nicht besonders bewandert, deswegen fehlt mir der richtige Suchbegriff - hoffe aber hier kann mir jemand helfen.
Kurz gesagt:
Ich will via shell ein Kommando in einer zweiten Shell öffnen.
Lang gesagt:
Ich erstelle hier gerade aliase und ich muss dazu einen Server starten und in einer zweiten Shell einen weiteren Service starten. Jetzt möchte ich ein alias, das mir zwei shell session öffnet, jeweils in den Ordner wechselt, den server startet und eben simultan in den Ordner wechselt und einen Service startet...
Ich weiss dass die Begrifflichkeit hier u.U. falsch sind, wie gesagt bin nicht besonders bewandert und versuche gerade meine ersten Schritte - vielen Dank für die Unterstützung!
vermutlich irgendwie so
alias go=' Öffne Erste Shell && Starte Server && Öffne Zweite Shell & Starte Service'
Hilfreich?
0
Kommentare
AidanTale
08.02.20
07:04
Könntest du nicht einfach den Server in den Hintergrund schieben und dann weiter machen?
Hilfreich?
0
Bodo_von_Greif
08.02.20
08:32
Um welche services handelt es sich?
Gruss,
Bodo
„[x] nail here for new monitor“
Hilfreich?
0
hidalgo
08.02.20
09:34
Du kannst doch die beiden Befehle hintereinander ausführen, also mittels && aneinanderreihen.
Eine weitere Möglichkeit ist screen
(gibt es auch unter macOS)
„«Probleme kann man nie mit derselben Denkweise lösen, durch die sie entstanden sind.» Albert Einstein“
Hilfreich?
0
AidanTale
08.02.20
10:18
@hildago das funktioniert nur wenn sich der Severprozess selbst in den Hintergrund schiebt, also als Dämon läuft, und den Prompt zurück gibt.
Darum hinter Server ein & um den in den Hintergrund zu verschieben und dann weiter machen. Den Service kann man vermutlich auch in den Hintergrund schieben (so er denn permanent laufen soll), dann kommt der Prompt am Ende vom Aufruf zurück und man kann die Shell interaktiv nutzen. Also so:
cd dir1 && {server&} && cd dir2 && {service&}
Ein Skript wäre hier aber besser, das kann beim Beenden gleich die Hintergrundprozesse aufräumen. Ansonsten mußt du die wenn sie nicht mehr laufen sollen manuell stoppen (fg ctrl+c und fg ctrl+c) oder die Shell beenden.
Hilfreich?
+1
michimaier
08.02.20
11:01
Schonmal vielen Dank an alle!
@hidalgo: 'screen' schau ich mir mal an...
@AidanTale:
Tatsächlich geht es darum:
Laravel:
1) php artisan serve
2) npm run watch
vermutlich weiss jetzt jeder um was es geht
Ich krieg das nicht als Hintergrundprozess hin (via Alias!) und hätte das tatsächlich gerne in zwei separaten Shells...
Hab mir jetzt eine Fenstergruppe in Terminal gemacht - die startet er auch in den richtigen Verzeichnissen,
aber dass die dann irgendwas starten geht nicht... also ich müsste die beiden Commands manuell eingeben.
Hab gestern noch lange gesucht, irgendwie gibts das wohl öfter aber wirklich eine Lösung hab ich nicht gefunden...
Hilfreich?
0
michimaier
08.02.20
12:06
Habs jetzt via AppleSkript gelöst...
Passt sich, eigentlich...
Danke euch trotzdem!
Hilfreich?
0
AidanTale
08.02.20
12:10
Wenn du die Terminalfenster haben möchtest, mach das doch ganz einfach:
In $HOME eine .zshrc anlegen und dort je nach aktuellem Loginverzeichnis das entsprechende Kommando ausführen:
[[ "$(pwd)" = *Verzeichnisname1* ]] && php artisan serve
[[ "$(pwd)" = *Verzeichnisname2* ]] && npm run watch
Das sollte dann beim Login dazu führen dass wenn man in entsprechenden Verzeichnissen startet die Programme ausgeführt werden. Möchte man den Prompt haben muss noch ein & hinter die Programme.
Hilfreich?
+1
michimaier
08.02.20
13:07
Probier ich auf jeden Fall aus - das sieht gut aus - danke dir sehr!
Hilfreich?
0
Kommentieren
Diese Diskussion ist bereits mehr als 3 Monate alt und kann daher nicht mehr kommentiert werden.
Mac-Wartung: Alte Kernel-Erweiterungen entfernen
Kurz: Trump unterstützt Musk als TikTok-Besitze...
Neuer Mac: Vorbereitung für den Umzug vom alten...
Gurman zum Release des neuen Apple TV, HomePods...
Parallels führt x86-Windows auf M-Macs aus – Te...
Test AirPods Pro 2
Apple Silicon M4: Die versteckte Innovation der...
Mac OS X: 25 Jahre Aqua, 25 Jahre Dock