Тема: однострочная умная команда perl вместо простого grep (в bash-скрипте)
У меня проблема, когда я использую grep для сопоставления с необычными символами (я не могу ставить «\» перед каждым необычнымсимвол, потому что это очень проблематичное и не умное решение
Мне нужен perl-однострочный синтаксис, который точно соответствует всем неиспользуемым символам, как определено в примерах $ Some_string
Examples
Some_string="[234-094]"
Some_string="[ * ( & % @ !]"
Some_string="~ [ 0:3 # % & ^ + =]"
Some_string="1.1.1.1.-9.9.9.9 + 9999.999.1 – 10000"
Some_string="< { [ ' : ; " ? / . , "
Some_string="PORT.A.B.C.D – 124.543.455.33 – [ ! NOT EQUAL PORT 38737 – 3837652"
.
.
.
мой плохой синтаксис grep
cat file | grep $Some_string
с perl (необходимо следующее правильное предложение / решение)
cat file | perl -nle 'print if /$Some_string/'
ПРАВИЛА:
примечание: если Some_string = "111.111.111.111" и вУ меня есть файл 1111.1111.1111.1111, тогда синтаксис perl должен игнорировать это. Perl должен совпадать, только если у меня есть в файле: 111.111.111.111.
примечание sec: if Some_string = "WORD" и в файле, который у меня есть: ONEWORD, тогда синтаксис perl нужно игнорировать, этот perl должен совпадать, только если у меня есть в файле: WORD