Ответ 1
Попробуйте ack-grep 'paypal_responded(?!_at)'
Вам нужна одинарная кавычка, чтобы избежать bash интерпретировать !
как команду расширения истории.
У меня проблема с использованием ack-grep
с негативным прогнозом.
Я запускаю эту команду:
ack-grep "paypal_responded(?!_at)"
но я получаю сообщение об ошибке:
bash: !_at: event not found
Я попытался добавить обратную косую черту в разных местах, но я также новичок в использовании ack и linux, поэтому, пожалуйста, обращайтесь со мной как новичок с любыми инструкциями.
Спасибо заранее.
Попробуйте ack-grep 'paypal_responded(?!_at)'
Вам нужна одинарная кавычка, чтобы избежать bash интерпретировать !
как команду расширения истории.
Оболочка интерпретирует !
в вашем вводе как замену команды:
$ ack-grep root /etc/passwd
root:x:0:0:root:/root:/bin/bash
$ !ac
ack-grep root /etc/passwd
root:x:0:0:root:/root:/bin/bash
$
Вам нужно сообщить оболочке, что !
не имеет особого значения; есть два способа сделать это:
ack-grep "paypal_responded(?\!_at)"
Забастовкa >
ack-grep "paypal_responded\(?\!_at\)"
или
ack-grep 'paypal_responded(?!_at)'
Строки с одним кавычком имеют меньше применений к ним:
$ ack-grep "s\!" /etc/passwd
$ ack-grep 's!' /etc/passwd
$