我想grep文件中的以下字符串:
directory1
directory2
directory3
Run Code Online (Sandbox Code Playgroud)
有没有办法用grep同时grep所有3?
例如:
cat file.txt | grep directory[1-3]
Run Code Online (Sandbox Code Playgroud)
不幸的是,上述方法无效
如果这些是您需要搜索的唯一字符串,请使用-F(grep表示固定字符串):
grep -F "directory1
directory2
directory3" file.txt
Run Code Online (Sandbox Code Playgroud)
如果你想使用更高级的正则表达式grep,请使用-E(使用扩展正则表达式):
grep -E 'directory[1-3]' file.txt
Run Code Online (Sandbox Code Playgroud)
请注意,有些greps(如GNU grep)不需要-E此示例.
最后,请注意您需要引用正则表达式.如果不这样做,您的shell可能会首先根据路径名扩展扩展正则表达式(例如,如果您在当前目录中有一个名为"directory1"的文件/目录,grep directory[1-3]则将grep directory1由您的shell转换).
| 归档时间: |
|
| 查看次数: |
9939 次 |
| 最近记录: |