我有一个使用ack-grep负向前看的问题.
我正在运行此命令:
ack-grep "paypal_responded(?!_at)"
Run Code Online (Sandbox Code Playgroud)
但我收到错误:
bash: !_at: event not found
Run Code Online (Sandbox Code Playgroud)
我曾尝试在各个地方添加反斜杠,但我也是新手使用ack和linux,所以请把我作为一个新手用任何指示.
提前致谢.
我正在尝试打印文件中b没有后跟的行e.我尝试使用负面预测,但它不起作用.
grep 'b(?!e)' filename
grep '(?!e)b)' filename
egrep 'b(?!e)' f3.txt
Run Code Online (Sandbox Code Playgroud)
当我运行这些命令时,没有任何显示,没有错误或其他任何东西.我检查了其他人的类似帖子,但无法运行它.
我有与这篇文章完全相同的问题,但是在 bash 中,正则表达式对我不起作用。正则表达式排除,寻找一个没有跟在另一个词后面的词
我想包含包含单词“Tom”的 csv 文件的所有行,除非后面跟着“Thumb”。
Tom(?!\s+Thumb)当我在 regex101.com 上试用时,正则表达式可以工作。
但是我已经尝试了所有这些变体,但没有一个起作用。我错过了什么,我该如何解决这个问题?我在 Mac 上。
cat inputfile.csv | grep Tom(?!\s+Thumb) > Tom.csv
cat inputfile.csv | egrep Tom(?!\s+Thumb) > Tom.csv
cat inputfile.csv | egrep “Tom(?!\s+Thumb)” > Tom.csv
cat inputfile.csv | grep -E Tom(?!\s+Thumb) > Tom.csv
cat inputfile.csv | grep -E “Tom(?!\s+Thumb)” > Tom.csv