dmidecode | grep -i 'serial number' |grep -v 'Not Specified' |grep -v 'None'
时间: 2024-01-07 11:06:06 浏览: 225
你可以使用以下命令来获取序列号信息,排除Not Specified" 和 "None" 的结果:
```shell
dmidecode | grep -i 'serial number' | grep -v 'Not Specified' | grep -v 'None'
```
这个命令将会使用 `dmidecode` 命令来获取系统的详细信息,并使用 `grep` 命令来过滤出包含 "serial number" 的行。然后使用 `grep -v` 命令来排除包含 "Not Specified" 和 "None" 的行。
相关问题
python 脚本:长跑之前检查 linux下获取”cat /proc/cpuinfo | grep -i 'Model name' | awk -F: '{$1="";sub("^ *","");$2="";sub(" *$","");print}' dmidecode -t processor | grep -c Version dmidecode -t memory | grep -i 'Part Number' | grep -v 'NO DIMM' | awk -F: '{$1="";sub("^ *","");$2="";sub(" *$","");print}' dmidecode -t memory | grep -i size | grep -cvi no lspci | grep Eth | awk -F ': ' '{$1="";sub("^ *","");$2="";sub(" *$","");print}'“并保存结果,执行ipmitool power cycle,进入系统后继续检查”cat /proc/cpuinfo | grep -i 'Model name' | awk -F: '{$1="";sub("^ *","");$2="";sub(" *$","");print}' dmidecode -t processor | grep -c Version dmidecode -t memory | grep -i 'Part Number' | grep -v 'NO DIMM' | awk -F: '{$1="";sub("^ *","");$2="";sub(" *$","");print}' dmidecode -t memory | grep -i size | grep -cvi no lspci | grep Eth | awk -F ': ' '{$1="";sub("^ *","");$2="";sub(" *$","");print}' 脚本循环20次。
这是一个检查 Linux 系统硬件信息的 Python 脚本,执行过程如下:
1. 使用命令 `cat /proc/cpuinfo | grep -i 'Model name' | awk -F: '{$1="";sub("^ *","");$2="";sub(" *$","");print}'` 获取 CPU 型号信息;
2. 使用命令 `dmidecode -t processor | grep -c Version` 获取 CPU 版本信息;
3. 使用命令 `dmidecode -t memory | grep -i 'Part Number' | grep -v 'NO DIMM' | awk -F: '{$1="";sub("^ *","");$2="";sub(" *$","");print}'` 获取内存型号信息;
4. 使用命令 `dmidecode -t memory | grep -i size | grep -cvi no` 获取内存大小信息;
5. 使用命令 `lspci | grep Eth | awk -F ': ' '{$1="";sub("^ *","");$2="";sub(" *$","");print}'` 获取网卡型号信息;
6. 将上述信息保存到文件中;
7. 执行 `ipmitool power cycle` 命令重启系统;
8. 进入系统后重复执行步骤 1-5;
9. 循环执行上述步骤 20 次。
下面是实现这个脚本的 Python 代码:
```python
import os
count = 20
for i in range(count):
# 获取 CPU 型号信息
cpu_model = os.popen("cat /proc/cpuinfo | grep -i 'Model name' | awk -F: '{$1=\"\";sub(\"^ *\",\"\",$2);$2=\"\";sub(\" *$\",\"\",$2);print}'").read().strip()
# 获取 CPU 版本信息
cpu_version = os.popen("dmidecode -t processor | grep -c Version").read().strip()
# 获取内存型号信息
memory_model = os.popen("dmidecode -t memory | grep -i 'Part Number' | grep -v 'NO DIMM' | awk -F: '{$1=\"\";sub(\"^ *\",\"\",$2);$2=\"\";sub(\" *$\",\"\",$2);print}'").read().strip()
# 获取内存大小信息
memory_size = os.popen("dmidecode -t memory | grep -i size | grep -cvi no").read().strip()
# 获取网卡型号信息
nic_model = os.popen("lspci | grep Eth | awk -F ': ' '{$1=\"\";sub(\"^ *\",\"\",$2);$2=\"\";sub(\" *$\",\"\",$2);print}'").read().strip()
# 将信息保存到文件中
with open("hardware_info.txt", "a") as f:
f.write(f"CPU 型号: {cpu_model}\n")
f.write(f"CPU 版本: {cpu_version}\n")
f.write(f"内存型号: {memory_model}\n")
f.write(f"内存大小: {memory_size}\n")
f.write(f"网卡型号: {nic_model}\n")
f.write("\n")
# 重启系统
os.system("ipmitool power cycle")
# 等待系统重启完成
time.sleep(60)
# 再次获取硬件信息
cpu_model = os.popen("cat /proc/cpuinfo | grep -i 'Model name' | awk -F: '{$1=\"\";sub(\"^ *\",\"\",$2);$2=\"\";sub(\" *$\",\"\",$2);print}'").read().strip()
cpu_version = os.popen("dmidecode -t processor | grep -c Version").read().strip()
memory_model = os.popen("dmidecode -t memory | grep -i 'Part Number' | grep -v 'NO DIMM' | awk -F: '{$1=\"\";sub(\"^ *\",\"\",$2);$2=\"\";sub(\" *$\",\"\",$2);print}'").read().strip()
memory_size = os.popen("dmidecode -t memory | grep -i size | grep -cvi no").read().strip()
nic_model = os.popen("lspci | grep Eth | awk -F ': ' '{$1=\"\";sub(\"^ *\",\"\",$2);$2=\"\";sub(\" *$\",\"\",$2);print}'").read().strip()
# 将信息保存到文件中
with open("hardware_info.txt", "a") as f:
f.write(f"重启后 CPU 型号: {cpu_model}\n")
f.write(f"重启后 CPU 版本: {cpu_version}\n")
f.write(f"重启后 内存型号: {memory_model}\n")
f.write(f"重启后 内存大小: {memory_size}\n")
f.write(f"重启后 网卡型号: {nic_model}\n")
f.write("\n")
```
注意,如果要执行 `ipmitool power cycle` 命令需要使用 root 权限。此外,为了防止重启过程中文件写入失败,最好将文件名改为绝对路径。
dmidecode -t processor | grep id | sort -u | awk -f':' '{print $2}
这个命令可以用来获取服务器的CPU ID信息。它会执行以下操作:
1. 使用dmidecode命令获取服务器的DMI信息。
2. 使用grep命令过滤出包含“id”的行。
3. 使用sort命令对行进行排序,并去重。
4. 使用awk命令以“:”作为分隔符,输出第二个字段。
这样就可以获取到服务器上所有CPU的ID信息了。
阅读全文