Grep Поиск в Shell Script - PullRequest
       3

Grep Поиск в Shell Script

0 голосов
/ 24 октября 2019

Попытка реализовать систему, основанную на сценариях оболочки и PHP. Получение строки из файла PHP и обработка через скрипты оболочки. Каждый раз, когда он работает, за исключением некоторого времени, когда строки похожи: "/ jobs? Location_country = united + states & sort_by = cfml10% 2cdesc & v_location = usa" grep для этой команды не работает.

Как это решить?

Код:

hcm=$(php largest.php "$file"_hcm_input.txt "$remove")
echo "$hcm"
grep "$hcm" "$file"_sorted.txt > "$file"_jobs.txt

Ответы [ 3 ]

1 голос
/ 24 октября 2019

Используйте grep -F или grep --fixed-strings, чтобы сказать, что grep должен рассматривать аргумент как фиксированную строку, а не как регулярное выражение.

0 голосов
/ 25 октября 2019

После получения лота и пробной версии выяснилось, что это не проблема с & = или +, так как я проверил индивидуально

grep "=" s37_sorted.txt 
grep "&" s37_sorted.txt 
grep "+" s37_sorted.txt 

Предоставление мне вывода.

Точная причина была в этом. Поэтому нам нужно найти без учета регистра, что мы должны следовать следующему коду и параметру с помощью grep: -i

hcm=$(php largest.php "$file"_hcm_input.txt "$remove")
echo "Highest Common String:"$hcm
grep -i "$hcm" "$file"_sorted.txt > "$file"_jobs.txt

Теперь он показывает мне 366 записей.

0 голосов
/ 24 октября 2019

Поскольку в строке &, даже если вы заключите ее в одинарные / двойные кавычки, она не будет работать. В этом случае вы должны экранировать &, используя \ как \&.

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