Próbowałem wysyłać polecenia do uruchomionej sesji ekranu GNU (4.00.03) w opensolaris, ale nie mogę zmusić go do uruchomienia żadnych poleceń za pomocą dowolnej kombinacji screen -X
Ok, zaczynam sesję ekranową od screen -S test
, a następnie próbuję screen -r -X "date"
pokazać mi datę, kiedy ponownie się z nią połączę. Ale nie pojawił się ani komunikat o błędzie, ani wyjście na ekranie. Próbowałem z tak wieloma kombinacjami, że nawet nie pamiętam.
Wszelkie wskazówki, jak to osiągnąć?
Powodem, dla którego to robię, jest to, że mam program, który nie przychodzi jako demon, i chcę uruchomić go w sesji ekranowej, aby później zobaczyć, co się dzieje.
gnu-screen
session
opensolaris
Der Hochstapler
źródło
źródło
Odpowiedzi:
W rzeczywistości jest to dość proste. Możesz użyć następujących opcji:
echo -ne '\015'
emuluje naciśnięcie Enterklawisza.UWAGA: te „rzeczy” to polecenie ekranowe. http://www.gnu.org/software/screen/manual/screen.html#Stuff
źródło
stuff
to polecenie ekranowe, które „ wpycha ” ciąg do standardowego wejściaecho -ne '\015'
”, dlaczego?screen -d -m -S sessionname; screen -S sessionname -X [...]
nic nie zrobię, to nigdy nie zadziała, nawet(screen -d -m -S sessionname&)&sleep 10;screen -S sessionname -X [...]
nie zrobię nic oprócz stworzenia nowej sesji ekranowej, która nic nie robi. głosowanie w dółBrzmi jak chcesz:
A może po prostu chcesz dtach .
źródło
screen -list
pokazuje , że żadne sesje nie są otwarte.Otwórz nowe okno (z tytułu własności ) w istniejącej sesji nazwie sesion_name i wykonać shell_command (z opcjonalnym argumentów args )
źródło