シェルスクリプトでファイルを1行ずつ読み、20%未満の行を削除する方法

シェルスクリプトでファイルを1行ずつ読み、20%未満の行を削除する方法

助けが必要です。このファイルがあり、forループを使用して1行ずつ読み込み、リスト%CPUの20%未満の行を削除したいと思います。

%CPU   PID USER       UID COMMAND         %MEM
71  9136 ashti     1000 firefox          4.6
36  1432 ashti     1000 gnome-shell      8.6
25 9100 ashti     1000 gedit            1.1
 3  9092 ashti     1000 nautilus         1.2
 2  9109 ashti     1000 gnome-terminal-  0.9
 1 1248 ashti     1000 Xorg             2.6
 0  1375 ashti     1000 VBoxClient       0.0
 0  9118 ashti     1000 bash             0.1
 0   269 root         0 systemd-journal  2.8

私はこの例のようなものが欲しい

%CPU   PID USER       UID COMMAND         %MEM
71  9136 ashti     1000 firefox          4.6
36  1432 ashti     1000 gnome-shell      8.6
25 9100 ashti     1000 gedit            1.1

そして新しいファイルに保存してください。

ありがとう

ベストアンサー1

そしてgrep

grep -e "^%" -e "^[2-9][1-9]" file | column -t

column -tきれいにしてみてください:

%CPU  PID   USER   UID   COMMAND      %MEM
71    9136  ashti  1000  firefox      4.6
36    1432  ashti  1000  gnome-shell  8.6
25    9100  ashti  1000  gedit        1.1

おすすめ記事