Игнорирует ли Shell_exec ключ при использовании команды grep?Php

Кемеровские программисты php общаются здесь
Anonymous
Игнорирует ли Shell_exec ключ при использовании команды grep?

Сообщение Anonymous »

Я редко задаю вопрос, потому что пытаюсь найти решение в документации или инструкциях, но этот случай меня смутил.
У меня большой файл, и я с помощью grep ищу нужную мне строку . Есть необходимость использовать обход реестра.
Итак. Я использую PHP-код:

Код: Выделить всё

$text = "тест";
$result_vul = trim(shell_exec('grep --ignore-case "'.$text.'" file.txt'));
echo $result_vul;
Файл «test.txt» содержит строки:

Код: Выделить всё

ТЕСТ 123 Тест 456
При выполнении результатов нет, использую NGINX+PHP-FPM (php 7.4). Однако если вы используете команду в консоли, результат будет такой:

Код: Выделить всё

webs@user:~/web$ cat test.txt
ТЕСТ 123
Тест 456
webs@user:~/web$ grep -i "тест" test.txt
ТЕСТ 123
Тест 456
Версия GREP:

Код: Выделить всё

webs@user:~/web$ grep  --version
grep (GNU grep) 3.8
Copyright (C) 2022 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later .
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Written by Mike Haertel and others; see
.
Я знаю, что проблему можно решить аналогичным образом, используя file_get_contents и preg_match, но меня интересует использование команды grep, так как файл большой.Спасибо за помощь.

Подробнее здесь: https://stackoverflow.com/questions/786 ... ep-command

Вернуться в «Php»