OK, mamy sytuację:
- lokalnie → logujesz się na zdalny Linux przez
ssh, - na zdalnym działa nazwany screen (np.
screen -S moja_sesja), - chcesz do niego wysłać polecenie, które ma się wykonać w bashu wewnątrz screen’a.
🔹 Rozwiązanie
Do wysyłania komend do istniejącej sesji screen służy screen -S <nazwa> -X stuff.
Przykład:
ssh user@host "screen -S moja_sesja -X stuff 'ls -l\n'"
👉 szczegóły:
-S moja_sesja– wybiera sesję o nazwiemoja_sesja-X stuff 'polecenie\n'– wstrzykuje tekst do terminala (trzeba dodać\nna końcu, żeby symulować Enter)
ssh user@host “screen -S moja_sesja -X stuff ‘echo hello && uptime\n'”
ssh user@host “screen -S moja_sesja -X stuff ‘echo hello && uptime\n'”
Wysyłanie skrótów klawiszowych (np. Ctrl+C):
ssh user@host “screen -S moja_sesja -X stuff $’\003′”