Do wysyłania komend do istniejącej sesji screen służy screen -S -X stuff

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 nazwie moja_sesja
  • -X stuff 'polecenie\n' – wstrzykuje tekst do terminala (trzeba dodać \n na 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′”

Leave a Reply

Your email address will not be published. Required fields are marked *