1

Linux BASHシェルで大きなファイルからテキストをgrepしてBOLD文字でマークする方法はありますか? お気に入り

Filesystem Size Used Avail Use% Mounted on
/dev/sda1 15G 11G 3.3G 76% /
tmpfs 7.9G 0 7.9G 0% /dev/shm
/dev/sda3 51G 45G 3.8G 93% /home
/dev/sdc1 917G 359G 512G 42% /data

上記の出力があり、システムがこの df 出力についてメールを送信するたびに、/data 行を太字にする必要があります。

4

2 に答える 2

3

ANSIエスケープシーケンスを使用すると、これを行うことができます(ただし、これは端末に依存します):

echo -e "\033[1m$(grep '/data' file)\033[0m"

生産します:

/dev/sdc1 917G 359G 512G 42% /data

于 2013-10-16T11:56:53.727 に答える
0

Bash には実際には太字がありません (事実上同等の明るい文字があります)。を使用sedして bash 制御コードを挿入できますが、正確な色の選択にそれほど関心がない場合は、次を使用できます。

grep --color -E "text match pattern|" mylargefile

強調表示を行うためにgrepを取得します。(カラー化されたgrepを参照してください-代替と議論のために強調表示された一致でファイル全体を表示します)

于 2013-10-16T11:53:09.403 に答える