awk를 사용하여 df 명령 출력 구문 분석

awk를 사용하여 df 명령 출력 구문 분석

로 시작하는 모든 줄을 일치시킨 후 헤더로 인쇄할 출력의 첫 번째 줄을 어떻게 저장할 수 있습니까 /dev/nvme?

이제 두 번 호출해야 하는데 dfawk를 사용하여 한 번에 호출하고 싶습니다.

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출력에 따라 열의 간격을 적절하게 지정할 수 있다는 것입니다.

관련 정보