Я могу убить сеанс отдельного экрана с помощью этой команды:
sudo kill $(screen -ls | awk '/ScreenName/ { print $1 }' | cut -f 1 -d '.')
Я пытаюсь реализовать это на простой странице PHP:
<?php
if ($_GET['run']) {
$cmd =shell_exec("screen -ls | awk '/ScreenName/ { print $1 }' | cut -f 1 -d '.'");
system('sudo kill $cmd');
?>
<a href="?run=true">Kill The Screen</a>
Однако PHP неРабота.Я думаю, это происходит потому, что я не могу правильно реализовать $ cmd. Потому что, когда я пытаюсь назначить команду в терминале $ cmd и выполнить ее, она не работает.Вкратце это происходит:
~$ cmd="screen -ls | awk '/ScreenName/ { print $1 }' | cut -f 1 -d '.'"
~$ echo $cmd
screen -ls | awk '/ScreenName/ { print $1}' | cut -f 1 -d '.'
~$ $cmd
No Sockets found in /run/screen/S-ubuntu
~$ screen -ls | awk '/ScreenName/ { print $1}' | cut -f 1 -d '.'
28578
Это \
escape-символ?В чем может быть проблема?Это пользователь apache, запускающий экран?