Apakah ada cara untuk mengirim perintah ke proses yang disaring?


1

Saya memiliki proses, yang secara otomatis memulai dengan server menggunakan perintah ini -

screen -dmSL myserver sudo bash /myserver/start

Saya dapat menghentikan proses jika saya terhubung ke layar dengan screen -x myserverdan masukkan stopperintah.

Sekarang, katakan saya memiliki skrip /myserver/stop, bagaimana cara kerjanya? Itu tidak akan berfungsi dengan konten berikut:

screen -x myserver
stop

Jawaban:


1

Setelah sedikit bereksperimen inilah jawaban yang saya temukan. Ini adalah perintah yang akan saya gunakan:

screen -p 0 -S myserver -X eval "stuff stop\015"

Sekarang poin demi poin:

-S mengatakan untuk terhubung ke sesi layar myserver

-p menentukan pesan yang masuk ke jendela 0 di seession

-X adalah argumen yang memungkinkan Anda untuk mengirim perintah ke sesi layar tanpa memasukkannya sendiri

eval memberitahu untuk mencetak "berhenti" dan baris baru ke stdin aplikasi

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.