gpt4 book ai didi

linux - grep -f 文件作为文件按顺序打印

转载 作者:IT王子 更新时间:2023-10-29 00:33:01 26 4
gpt4 key购买 nike

我需要从文件中 grep 模式,但需要它们按顺序排列。

$ cat patt.grep
name1
name2

$ grep -f patt.grep myfile.log
name2:some xxxxxxxxxx
name1:some xxxxxxxxxx

我得到的输出是 name2 首先被打印出来,然后 name1 被找到它也被打印出来。但我的要求是按照 patt.grep 文件的顺序首先获取 name1。

我期待输出为

name1:some xxxxxxxxxx
name2:some xxxxxxxxxx

最佳答案

您可以通过管道将 patt.grep 传递给 xargs,这会将模式一次一个地传递给 grep

默认情况下,xargs 在命令末尾附加参数。但在这种情况下,grep 需要将 myfile.log 作为最后一个参数。因此,使用 -I{} 选项告诉 xargs 用参数替换 {}

cat patt.grep | xargs -Ihello grep hello myfile.log

关于linux - grep -f 文件作为文件按顺序打印,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21908809/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com