Saya ingin memulai program dengan SSH menggunakan PHP, yang berfungsi dengan baik, tapi sekarang saya ingin mematikan layar dengan PHP, tetapi satu-satunya yang saya tahu adalah nama layar. Bagaimana cara mengetahui ID layar (secara otomatis)?
ubuntu
ssh
gnu-screen
php
TheWaveLad
sumber
sumber
screen
atauDISPLAY
?Jawaban:
Anda dapat menggunakan variabel lingkungan
$STY
untuk menentukan apakah Anda berada di sesi layar dan juga apa nama sesi yang Anda masuki.Contoh
Awalnya kami duduk di jendela terminal, bukan di dalam sesi layar.
Putar sesi layar:
Hubungkan ke sana:
Sesi layar di dalam:
Membunuh satu sesi
Dengan nama sesi Anda dapat membunuhnya menggunakan
screen
.Anda juga dapat menggunakan nomor di sana juga.
Konfirmasikan bahwa itu telah terbunuh:
sumber
Apakah maksud Anda
screen
programnya?screen -ls
akan mencantumkan proses layar bersama dengan nama layarnya, diawali dengan PID tempat mereka menjalankan:Anda dapat menggunakannya untuk mematikan proses:
Atau, jika Anda dapat mengidentifikasi proses php dengan ps, maka id induknya akan menjadi layar dan Anda dapat mematikannya.
pgrep -U <myusername> -f <name>
akan membantu menemukan proses php yang ingin Anda temukan (perhatikan-f
yang mencari argumen perintah serta nama perintah). Anda mungkin menjalankan lebih dari satu skrip php, sehingga-f
akan menjadi mekanisme yang lebih baik untuk mencocokkan proses Anda.<myusername>
akan menjadi nama pengguna Anda,<name>
akan menjadi string yang cocok dengan proses oleh. Kemudian Anda dapat menggunakanps -p <pid> -o ppid=
untuk mendapatkan ID proses layar dan mematikannya.sumber