このコマンドラインで sed 's/5//g' とはどういう意味ですか?

このコマンドラインで sed 's/5//g' とはどういう意味ですか?

これは df -h の出力です。

[root@ip-10-0-7-225 ~]# df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/xvda1      8.0G  1.5G  6.6G  18% /
devtmpfs        478M     0  478M   0% /dev
tmpfs           496M     0  496M   0% /dev/shm
tmpfs           496M   13M  484M   3% /run
tmpfs           496M     0  496M   0% /sys/fs/cgroup
tmpfs           100M     0  100M   0% /run/user/1000

したがって、次のコマンドを実行すると18%と表示されます。

[root@ip-10-0-7-225 ~]# df / | grep / | awk '{ print $5}'| sed 's/5//g'

18%

重要なのは、sed 's / 5 / / g'部分を交換しても、結果はまだ18%であるということです。どうなりますか?

答え1

sed 's/5//g'ここで意味する可能性が最も高いのは、出力からパーセント記号を削除する意図でコマンドライン全体を入力したが、それを見逃して代わりに得たことをShift意味します。5%

現在の形式ではsed出力から削除されることを示すため、これは意味がありません。5

答え2

grep - grep 最初の行 (/ を含む)

awk - 列5を印刷します(18%)。

sed - 5を置き換えません。 - 5を含まないため、上記の文字列(18%)には影響しません。

関連情報