shell_exec работает на ВМ, но не через PHP - PullRequest
0 голосов
/ 19 сентября 2019

У меня есть это

public function memory()
{
    $result = [];
    $result['total'] = shell_exec(`free -m | grep Mem: | awk '{ print $2 }'`);
    $result['used'] = shell_exec(`free -m | grep Mem: | awk '{ print $3 }'`);
    $result['free'] = shell_exec(`free -m | grep Mem: | awk '{ print $4 }'`);

    return $result;

}

Я пытаюсь создать доступ к своей памяти моей виртуальной машины Ubuntu и построить ее график.

Но API продолжает возвращать ноль.

{
total: null,
used: null,
free: null
}

Если я запускаю прямо в ВМ - я понял.

└── free -m
             total       used       free     shared    buffers     cached
Mem:          2002       1244        757         63        159        427
-/+ buffers/cache:        657       1344
Swap:            0          0          0
┌──[john@server]──[/server] 
└── free -m | grep Mem:
Mem:          2002       1244        757         63        159        427                  
┌──[john@server]──[/server] 
└── free -m | grep Mem: | awk '{ print $2 }'                                                
2002
You have new mail in /var/mail/john
┌──[john@server]──[/server] 
└── free -m | grep Mem: | awk '{ print $3 }'                                                
1243
┌──[john@server]──[/server] 
└── free -m | grep Mem: | awk '{ print $4 }'                                                
757

Я сделал что-то не так в написании своей функции?

Я использовал shell_exec() неправильно?

Пожалуйста, дайте мне несколько советов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...