我正在尝试使用此命令从Ubuntu中的/ proc / cpuinfo grep模型:
cat /proc/cpuinfo | grep 'model'
但我得到2行作为输出:
model : 60
model name : Intel(R) Core(TM) i7-4770 CPU @ 3.40GHz
我只会将此行作为输出:
model : 60
我该怎么做?
答案 0 :(得分:0)
使用以下命令验证服务器的型号:
dmidecode | grep -A3 '^System Information'
对我来说,它会返回:
System Information
Manufacturer: IBM
Product Name: System x3650 M3 -[7945J4A]-
Version: 00
答案 1 :(得分:0)
要仅获取第一行,只需使用head
:
cat /proc/cpuinfo | grep 'model' | head -1 # <--- This is what you realy asked
要获取最后一行,您可以使用tail
:
cat /proc/cpuinfo | grep 'model' | tail -1
如果你想要n'th
行,你可以使用两者:
cat /proc/cpuinfo | grep 'model' | head -n | tail -1
答案 2 :(得分:0)
只需打印包含&#34;型号&#34;的行。其最后一个字段是数字:
awk '/model/ && $NF~/^[0-9]*$/ {print $NF}' /proc/cpuinfo
或者您甚至可以提供您想要匹配的模式using -v
:
awk -v word="model" '$0 ~ word && $NF~/^[0-9]*$/ {print $NF}' /proc/cpuinfo
答案 3 :(得分:0)
只需使用GNU sed
:
sed -n '/model/{p;q}' /proc/cpuinfo
这将为model
中匹配/proc/cpuinfo
的第一行“grep”并打印出来。然后它将终止。
答案 4 :(得分:0)
您可以使用--invert-match
的{{1}}选项删除包含姓名的行。
grep
使用 -v, --invert-match
Invert the sense of matching, to select non-matching lines.
命令成为
-v
答案 5 :(得分:0)
cat /proc/cpuinfo | grep 'model\s\+:'
这是model
的greps,后跟空格(至少为1),后跟冒号。
答案 6 :(得分:0)
另一种方法:
lscpu | grep Model:
似乎很简单
答案 7 :(得分:0)
您只需要:
grep '^model[[:blank:]]*:' /proc/cpuinfo
或者如果您更喜欢awk:
awk '/^model[[:blank:]]*:/' /proc/cpuinfo
然后,如果您想要的只是该行末尾的数字,那么这只是一个调整:
awk '/^model[[:blank:]]*:/{ print $NF }' /proc/cpuinfo
答案 8 :(得分:-1)
您可以使用'sed'来解析单个行。
cat /proc/cpuinfo | grep 'model' | sed -n "1p"
会给你model: 60
和
cat /proc/cpuinfo | grep 'model' | sed -n "2p"
将为您提供第二行作为输出。