Linux

如何知道在 dmesg 中要 grep 什麼?

  • August 11, 2014

我最近在使用無線網卡時遇到了一些問題,一個線上論壇建議dmesg使用grep firmware. 這有幫助,我能夠立即找到問題!但是,前一個小時都在看,dmesg由於資訊量太大,我無法辨識任何相關內容!

on 怎麼知道在 dmesg 中 grep 做什麼?

當然,這是一個硬體問題,但我自己從來沒有想過要 grep 字元串“韌體”。對於熟悉 grep 輸出的人dmesg,我如何才能對 grep 的輸出做出一些有根據的猜測?

像這樣的東西會很有用:

dmesg | grep -iC 3 "what you are looking for" 

例如,如果要查找您的影片卡,您可以嘗試:

dmesg | grep -iC 3 "video"

或者:

dmesg | grep -iC 3 "graphics" 

C 3標誌將在匹配的字元串之前和之後列印 3 行,只是為了給您一些關於結果的上下文。但正如@tohecz所說,有成千上萬種可能性。

一切都取決於你在尋找什麼……聲音,wifi,usb,串列,閱讀器……。

如果您希望 USB 密鑰出現在其中,您可以嘗試 grepping for /dev/sd.


剛剛找到這個頁面,其中包含有關如何在其中 grep 內容的合理建議:

由於 的輸出長度,將dmesg其輸出通過管道傳遞給 grep 會很方便,grep 是一個過濾器,用於搜尋包含其後的字元串(即字元序列)的任何行。該-i 選項可用於告訴 grep 忽略字元串中字母的大小寫(即小寫或大寫)。例如,以下命令列出USB核心消息中對(通用串列匯流排)設備的所有引用:

dmesg | grep -i usb

下面告訴 dmesg 顯示所有串列埠(由字元串 tty 表示):

dmesg | grep -i tty

dmesg 和 grep 組合也可用於顯示系統上有多少物理記憶體(即 RAM)可用:

dmesg | grep -i memory

以下命令檢查以確認 HDD 是否在 DMA(直接記憶體訪問)模式下執行:

dmesg | grep -i dma

引用自:https://unix.stackexchange.com/questions/149718