命令 grep 多个文件?
无需编写 shell 脚本,我想知道是否有一种方法可以根据与多个条件的匹配来列出文件?
我知道我可以这样做:
ls ./files/ | grep samp
获取文件名中包含“samp”的所有文件的列表...但是,有没有办法说“列出所有与“samp”匹配的文件或“示例”?
我已经发现这
ls ./files/ | grep samp examp
不起作用......
without having to write a shell script, I'm wondering if there's a way to list files based on a match to more than one criteria?
I know I can do:
ls ./files/ | grep samp
to get a list of all files that contain "samp" in the filename... But, is there a way to say, "list all of the files that match "samp" or "examp"?
I already figured out that
ls ./files/ | grep samp examp
doesn't work...
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
使用 find - 它对于做这种事情来说更强大,例如:
Use find - it's much more powerful for doing this kind of thing, e.g.:
您可以使用
|
:-E
允许使用扩展(现代)正则表达式。如果您的grep
版本不支持该行为,则需要转义|
:You can use
|
:The
-E
is to allow the use of extended (modern) regular expressions. If your version ofgrep
doesn't support that behaviour, you'll need to escape the|
:您可以使用
find
命令。-o
表示“或”。您可以使用-iname
代替-name
进行不区分大小写的匹配。You can use the
find
command.The
-o
means "or". You can use-iname
instead of-name
for case-insensitive matching.