有没有比使用这四个命令放在一起更好的 grep 方法



本质上,我要做的是解析系统上的一些文件,并从每个文件中提取一些不同的东西。 以下是我目前的做法:

grep -oP "((?<=set_kb_item(name:)(.*?)(?=, value:))" *.nasl >> /tmp/set_kb_items.txt && 
grep -oP "((?<=user = )(.*?)(?=;))" *.nasl >> /tmp/usernames.txt && 
grep -oP "((?<=dependencies()(.*?)(?=)))" *.nasl>> /tmp/dependencies.txt && 
grep -oP "((?<=script_set_attribute(attribute:"plugin_type", value:)(.*?)(?=)))" *.nasl >> /tmp/plugin_type.txt && 
grep -oP "((?<=script_require_ports()(.*?)(?=)))" *.nasl >> /tmp/required_ports.txt 

这对我来说非常有效,大约两分钟即可完成(70k 个文件)。 但是,我很好奇我是否可以以不同的方式将它们链接在一起? 我在这里的最终目标是获取这个字符串,并在 python 中执行等效操作,然后将这些值发送到数据库,但我还没有完全实现。 任何意见将不胜感激,谢谢!

不链接它们怎么样,因为没有依赖项。

grep _yourstaff_ *.nasl >> _youfile1_ & grep _youotherstaff_ *.nasl &

这些将作为不同的进程并行执行。

最新更新