
Как сохранить первую строку вывода для печати в качестве заголовка после сопоставления всех строк, начинающихся с /dev/nvme
?
Сейчас я делаю вызов df
дважды, но мне бы хотелось сделать это за один проход с помощью awk.
df -h | grep '^Filesystem' && df -h | grep '^/dev/nvme'
Желаемые результаты:
Filesystem Size Used Avail Use% Mounted on
/dev/nvme0n1p2 ...
/dev/nvme0n1p1 ...
решение1
Как отметили другие:
df -Ph | awk 'NR == 1 || $0 ~ "^/dev/nvme"'
Кроме того, Linux df
позволяет указать файл устройства в командной строке:
df -x devtmpfs -Ph /dev/nvme*
Это -x devtmpfs
делается для того, чтобы предотвратить /dev
отображение файловой системы, если соответствующее устройство не смонтировано.
Эта -P
опция гарантирует, что df
строка не будет разорвана, даже если один из столбцов широкий.
Преимущество второго метода в том, что он df
позволяет разместить столбцы соответствующим образом для вывода.