我确定我在这里做的事情很明显是错误的,但我不知道是什么。使用 bash shell 中的 grep,我有一个文件 test.txt:
ABC123
ABC456
ABC789
DEF123
DEF456
DEF789
现在在命令行:
$ grep ABC test2.txt
ABC123
ABC456
ABC789
$ grep DEF test2.txt
DEF123
DEF456
DEF789
所以那些工作很好。现在,我希望以下命令打印整个文件,但是:
$ grep ABC\|DEF test2.txt
$ grep (ABC)\|(DEF) test2.txt
-bash: syntax error near unexpected token `ABC'
$ grep \(ABC\)\|\(DEF\) test2.txt
$ grep 'ABC|DEF' test2.txt
我究竟做错了什么?