Как выполнить команду в консоли (linux) и получить ответ?
Подскажите, возможно ли средствами php выполнить команду в консоли и получить ответ? OS linux. Задача такая, выполнить команду в нейронную сеть fasttext и получить вектор сроки для последующего сравнения двух строк (косинусное сходство).
Дмитрий, команда exec работает если запустить какую нибудь стандартную команду, например pwd возвращает такой результат: Вернёт статус 0 и значение: Array ( [0] => /var/www/run.com/html/fastText )
exec('pwd', $output, $retval);
echo "Вернёт статус $retval и значение:\n";
print_r($output);
echo "<hr>";
Но если запустить команду: ./fasttext
exec('./fasttext', $output, $retval);
echo "Вернёт статус $retval и значение:\n";
print_r($output);
echo "<hr>";
Возвращает: Вернёт статус 1 и значение: Array ( )
В то врем если сделать запрос из консоли:
alex@alex-HP-Notebook:/var/www/run.com/html/fastText$ ./fasttext
usage: fasttext
The commands supported by fasttext are:
supervised train a supervised classifier
quantize quantize a model to reduce the memory usage
test evaluate a supervised classifier
test-label print labels with precision and recall scores
predict predict most likely labels
predict-prob predict most likely labels with probabilities
skipgram train a skipgram model
cbow train a cbow model
print-word-vectors print word vectors given a trained model
print-sentence-vectors print sentence vectors given a trained model
print-ngrams print ngrams given a trained model and word
nn query for nearest neighbors
analogies query for analogies
dump dump arguments,dictionary,input/output vectors
Дмитрий, спасибо большое, разобрался. Если ввести ./fasttext выдает help но возвращает ошибку, поэтому результат не возвращался, так как и не чему было возвращается, если составить запрос правильно то все работает. Огромное спасибо.