Ich möchte ein Programm mit SSH mit PHP starten, was gut funktioniert, aber jetzt möchte ich den Bildschirm mit PHP beenden, aber das einzige, was ich weiß, ist der Name des Bildschirms. Wie finde ich die Bildschirm-ID (automatisch) heraus?
ubuntu
ssh
gnu-screen
php
TheWaveLad
quelle
quelle
screen
oderDISPLAY
?Antworten:
Mithilfe der Umgebungsvariablen können Sie
$STY
bestimmen, ob Sie sich in einer Bildschirmsitzung befinden und wie der Name der Sitzung lautet, in der Sie sich befinden.Beispiel
Anfangs sitzen wir in einem Terminalfenster, nicht innerhalb einer Bildschirmsitzung.
Starten Sie eine Bildschirmsitzung:
Verbinden Sie sich damit:
Inside-Screen-Sitzung:
Eine Sitzung beenden
Mit dem Namen der Sitzung können Sie sie mit beenden
screen
.Sie können die Nummer auch dort verwenden.
Bestätigen Sie, dass es getötet wurde:
quelle
Meinst du das
screen
Programm?screen -ls
listet Bildschirmprozesse zusammen mit ihrem Bildschirmnamen auf, vorangestellt von der PID, von der aus sie ausgeführt werden:Sie können das verwenden, um den Prozess abzubrechen:
Wenn Sie den PHP-Prozess mit ps identifizieren können, wird alternativ die übergeordnete ID auf dem Bildschirm angezeigt, und Sie können dies beenden.
pgrep -U <myusername> -f <name>
wird helfen, den PHP-Prozess zu finden, den Sie suchen möchten (beachten Sie,-f
welche die Befehlsargumente sowie den Befehlsnamen durchsucht). Möglicherweise führen Sie mehr als ein PHP-Skript aus, sodass-f
dies ein besserer Mechanismus für Ihren Prozess ist.<myusername>
wäre Ihr Benutzername,<name>
wäre eine Zeichenfolge, die dem Prozess entspricht. Dann können Sieps -p <pid> -o ppid=
die Bildschirm-Prozess-ID abrufen und diese beenden.quelle