grep: - c: неизвестная опция - PullRequest
0 голосов
/ 29 марта 2020

Я пытаюсь устранить периодически возникающую ошибку с помощью скрипта cron, который развернут во многих унаследованных мной системах.

Вот суть сценария:

#!/bin/ksh
command_output=`echo hi | grep -c ay`

Вот случайная ошибка из вывода cron:

grep: -c: unknown option
Usage: grep [-a name] opstring name [args...]

Я не понял, как дублировать идентичная ошибка при запуске скрипта в интерактивном режиме.

Вместо этого, когда я пытаюсь вызвать эту ошибку, используя фиктивный код в сценарии (например, grep -J ay), я вижу следующее:

grep: invalid option -- 'J'
Usage: grep [OPTION]... PATTERN [FILE]...

Поскольку сообщения об ошибках отличается (ie, неизвестно от недействительного, различия в использовании), я делаю вывод, что моя работа cron использует другой "grep", чем когда он выполняется интерактивно.

Не могли бы вы помочь мне выяснить, как продублировать проблему cron? Еще лучше, вы можете поделиться какой-нибудь догадкой, как это исправить?

Полагаю, мы можем обновить скрипт на всех системах до чего-то вроде этого:

command_output=$(echo hi | grep ay | wc -l)

... но Я не уверен, что есть лучшие идеи.

...