隨着命令:df -h | grep /dev/md/dsk/d0
我得到以下結果:操縱的Linux diskfree輸出
/dev/md/dsk/d0 4.8G 4.0G 792M 84%
我想操縱這個輸出得到792M
從理論上講,我可以找1〜 3位數後跟一個「M」得到792M
我試圖從正則表達式教程學習,但我絕對沒有線索如何開始並解決此問題。
隨着命令:df -h | grep /dev/md/dsk/d0
我得到以下結果:操縱的Linux diskfree輸出
/dev/md/dsk/d0 4.8G 4.0G 792M 84%
我想操縱這個輸出得到792M
從理論上講,我可以找1〜 3位數後跟一個「M」得到792M
我試圖從正則表達式教程學習,但我絕對沒有線索如何開始並解決此問題。
如果你只是需要走出第4單元,我會做:
df -h | grep /dev/md/dsk/d0 | awk '{ print $4 }'
當然,如果您有awk,您不需要grep:'df -h | awk'$ 1 ==「/ dev/md/dsk/d0」{print $ 4}'' –
相反,由於awk的模式字段使用egrep風格的正則表達式,所以我說'grep'是多餘的,並且啓動一個額外的過程。 –
我們似乎在交叉目的。你知道我沒有發表原來的問題,對吧? –
awk
可能是這個最簡單的工具。
df -h | grep /dev/md/dsk/d0 | awk '{print $(NF-1)}'
這將打印第二到最後一列(如果第一列中有空格,我從來沒有聽說過這樣的事情在/dev
,但我不明白爲什麼它不可能發生;它是倒數第三位在我的df
)或
df -h | grep /dev/md/dsk/d0 | awk '{print $4}'
得到第四個字段。
感謝您編輯本文以提高可讀性 – Ajin