Starten Sie eine neue tmux-session und trennen es, alle in einem shell-Skript
Ich versuche, erstellen Sie eine neue tmux-Sitzung und führen Sie den Befehl 'vagrant up'. 'Vagrant up", dauert mehr als 3 Stunden, so dass ich möchten, trennen Sie die Sitzung, so dass ich später zurückkommen können, und überprüfen Sie den status des Befehls durch Anhängen zurück zu der gleichen Sitzung.
Folgte ich der Antwort angegeben in der StackOverflow-post, um dasselbe zu erreichen.
Ich bin immer der Fehler no session found
. Hier ist mein code:
$cat tmux_sh.sh
#!/bin/bash
echo "step 1"
tmux new-session -d -s rtb123 'vagrant up'
echo "step 2"
tmux detach -s rtb123
$./tmux_sh.sh
step 1
step 2
session not found: rtb123
Nicht reproduzieren können. Ich denke, das problem ist
Sie sind derzeit nicht angebracht Sitzung rtb123, so kann man nicht trennen von ihm. Entfernen Sie einfach die Linie.
vagrant up
unmittelbar fehlschlägt, wird möglicherweise wegen der im falschen Verzeichnis. Warum versuchen Sie nicht tmux new-session -d -s rtb123 'vagrant up || echo "vagrant failed" && sleep 60'
. Sie schlafen lange genug auf Fehler für Sie, die situation zu untersuchen.Sie sind derzeit nicht angebracht Sitzung rtb123, so kann man nicht trennen von ihm. Entfernen Sie einfach die Linie.
InformationsquelleAutor Swarup Donepudi | 2015-10-29
Du musst angemeldet sein, um einen Kommentar abzugeben.
Starten Sie eine shell, und senden vagrant up, so können Sie die Fehler sehen.
Den
C-m
bedeutet, drücken Sie die EINGABETASTE.InformationsquelleAutor mlv
Sind Sie mit der
-d
- switch beim erstellen der session. Dies bedeutet, dass die session startet losgelöst, so dass Sie nicht brauchen, um verwenden Sie die detach-Befehl. Außerdem, wenn Sie Ihre Sitzung wird nicht ausgeführt, wenn Sie versuchen zu trennen, es bedeutet, dass es nicht mehr existiert, so Ihr Befehl wohl verlassen.InformationsquelleAutor petersohn