比方说,我正在使用lshw获取系统内存,并且我希望将其打印出来,以便仅获取系统内存选项。您可以指定在grep中的字符串之前或之后要打印多少行吗?下面输出lshw命令的片段以供参考:
<table></table>
<br><br>
<div id="filters"></div>
我可以使用 description: Computer
width: 64 bits
*-core
description: Motherboard
physical id: 0
*-memory
description: System memory
physical id: 0
size: 23GiB
*-cpu
product: Intel(R) Core(TM) i5-8350U CPU @ 1.70GHz
vendor: Intel Corp.
physical id: 1
bus info: cpu@0
capacity: 1896MHz
width: 64 bits
来获取23 GiB部分,但是我想看看是否有办法用grep获取一段文本来获取完整的内存部分。
答案 0 :(得分:5)
@ L3viathan帮助我弄清楚了。 Grep具有-A标志,可让您指定在字符串后要多少行。您也可以使用-B标志来指定在字符串之前需要多少行。
示例后:
lshw | grep *-memory -A 3
输出:
*-memory
description: System memory
physical id: 0
size: 23GiB
示例之前:
lshw | grep size -B 3
输出:
*-memory
description: System memory
physical id: 0
size: 23GiB