Próbuję skonfigurować skrypt, który otwiera terminal, wykonuje ssh na zdalny serwer i wykonuje polecenie (tail -F logfile w moim przypadku).wykonywanie polecenia przez ssh, a następnie uruchamianie bash
Co mam tak daleko jest następujące
gnome-terminal -e 'ssh -t server "tail -F logfile"'
Działa to do pewnego stopnia. -t zapewnia, że sygnały takie jak SIGINT są wysyłane za pośrednictwem poleceń działających zdalnie.
Jednak, gdy ctrl-c ogon, naprawdę chciałbym upuścić do bash terminalu na zdalnym serwerze. Teraz, jeśli ctrl-c ogon, to ogon jest zamknięty, co powoduje, że ssh wychodzi, co powoduje, że cały terminal jest zamknięty.
Chciałbym, aby ogon został zakończony i pozostawiono powłokę bash na serwerze zdalnym.
Próbowałem następujące:
gnome-terminal -e 'ssh -t server "tail -F logfile; /bin/bash"'
ale to nie wydają się działać. Oznacza to, że jeśli uruchomię to bez gnome-terminal, tylko ssh -t ..., a następnie zobaczyć, co następuje:
some lines
from the log
^CConnection to server closed.
ale jeśli robię
gnome-terminal -e 'ssh -t server "nonexistantcommand; /bin/bash"'
Następnie pojawia się błąd, że nonexistantcommand nie zostanie znaleziony, a następnie I do spadnie do bash na zdalnym serwerze ...
Czy ktoś ma jakieś sugestie lub wskazówki, jak to zrobić? Z góry dziękuję.
To wydaje się działać. Dzięki :) Chx ma więcej wyjaśnień w swojej odpowiedzi na pytanie, dlaczego – vmpstr