GNU/Linux >> Linux の 問題 >  >> Linux

GREPに数値のみを選択させる方法は?

grep を出力します あなたが提供するパターンに一致します。パターンに一致する行の部分のみを印刷したい場合は、-o を渡すことができます オプション:

<ブロック引用>

-o, --only-matching 一致する行の一致した (空でない) 部分のみを出力し、そのような部分はそれぞれ別の出力行に出力します。

このように:

echo 'Here is a line mentioning 99% somewhere' | grep -o '[0-9]+'

試してみると:

 echo "99%" |grep -o '[0-9]*'

戻り値:

99

-o の詳細はこちら (または --only-matching flag) は grep マニュアル ページから動作します。

<ブロック引用>

一致する行の一致した (空でない) 部分のみを出力し、そのような部分はそれぞれ別の出力行に出力します。出力行は入力と同じ区切り文字を使用し、-z (--null-data) も使用されている場合、区切り文字は null バイトです (その他のオプションを参照)。


どうですか:

df . -B MB | tail -1 | awk {'print $4'} | cut -d'%' -f1

Linux
  1. 5つまたは6つの数字のみを含む行のGrep?

  2. Gnomeでのみプログラムを自動起動させる方法は?

  3. 一致する各行の上下の行をgrepで印刷するにはどうすればよいですか?

  1. 再帰的にgrepするにはどうすればよいですか?

  2. Linuxコマンドライン:du ---各ディレクトリの合計のみを表示する方法

  3. sed を使用して二重の空行のみを削除するには?

  1. 複数行の出力を 1 行に連結する方法は?

  2. 行番号または ASCII テーブルなしで hexdump から 16 進値のみを出力する方法は?

  3. ファイル内で \n を grep する方法