Используйте awk для отображения устройств с использованием диска выше 10%, а также печатайте заголовки столбцов.

Приведенная ниже команда отображает устройства с использованием файловой системы выше 10%. Однако это не отображает заголовки столбцов. Это команда, которую я использую:

df -Ph | awk '+$5 >= 10 {print}'

Я хочу вывод, как это

Filesystem                      Size  Used Avail Use% Mounted on 
/dev/mapper/VolGroup00-LogVol00   9.7G  1.9G  7.4G  21% /
/dev/mapper/VolGroup00-LogVol     5.0G  665M  4.1G  14% /app 
server:/data                      5.0G  546M  4.3G  12% /data

2 ответа

Вы можете сделать это, используя два условия для awk для вывода строки: либо использование диска выше 10%, либо первый параметр - "Файловая система":

df -Ph | awk '(+$5 >= 10 || $1=="Filesystem") {print}'

отредактируйте как предложено Jotne, вы можете написать это короче, как это (печать является действием по умолчанию):

df -Ph | awk '+$5>=10 || $1=="Filesystem"'

Выведите на печать, если мы смотрим на первую строку или пятое поле больше или равно 10.

df -Ph | awk 'NR==1 || +$5 >= 10'

Действие Awk по умолчанию состоит в том, чтобы напечатать строку, чтобы блок можно было опустить.

Другие вопросы по тегам