CPU, RAM 및 HDD 사용량을 보여주는 하나의 라이너


15

사용법과 관련하여 동일한 내용을 원하는 몇 가지 게시물을 보았지만 항상 타사 도구 설치에 대한 답변을 참조하십시오.

아무것도 설치하고 싶지 않습니다.

하나의 라이너? 다음은 좋은 결과입니다.

CPU 11% RAM 20% HDD 85%

HDD 사용량이 얼마나 꽉 차거나 사용량이 많은가?
바이트 사령관

@ByteCommander 둘 다? :) 진지하게, 용량. 둘 다 좋으면 좋을 것입니다.
Karl Morrison

한숨 ....... :-/
바이트 사령관

용량으로 @ByteCommander 나는 :) 분명 아니었다면 "얼마나 전체"를 의미
칼 모리슨

답변:


29

이것을 사용할 수 있습니다

echo "CPU `LC_ALL=C top -bn1 | grep "Cpu(s)" | sed "s/.*, *\([0-9.]*\)%* id.*/\1/" | awk '{print 100 - $1}'`% RAM `free -m | awk '/Mem:/ { printf("%3.1f%%", $3/$2*100) }'` HDD `df -h / | awk '/\// {print $(NF-1)}'`"

출력은

CPU 7.4% RAM 33.9% HDD 94%

2
파티션이 많으면 HD 부분이 빨라집니다.
coteyr

1
df -h /명령 행의 일부는 /파티션에 대한 통계를 보여줍니다 . df -h명령 을 반복 /하고 모니터링해야하는 마운트 포인트로 대체 할 수 있습니다 .
MKay

1
나를 위해 작동하지 않습니다. CPU는 항상 91 %입니다. 어디에서 얻을 수 있는지 모르겠습니다. // 그리고 RAM에는 버퍼와 캐시가 포함되어있어 마치 소모 된 것처럼 보입니다. RAM을 97.8 % 사용하지만 여전히 67.5 %의 여유 공간이 있습니다.
Oskar Skog

2
@OskarSkog 당신 top은 괜찮습니다. CPU 사용량은 현재 시점에서 측정 할 수 없으며 짧은 시간 동안 측정해야합니다. 때 top첫 번째 반복 실행, 그것은 마지막 재부팅 이후 평균 사용량을 보여줍니다. 두 번째 반복으로 시작하면 이전 반복 이후의 실제 현재 사용량이 표시됩니다. 현지화에 문제가있는 LC_ALL=C경우 기본 영어 현지화 (언어가 아닌 숫자 형식 등)를 사용하도록 명령 앞에 놓을 수 있습니다.
바이트 사령관

2
@MKay : 당신은 대체 할 수 있습니다 top -bn1 | grep "Cpu(s)"top -bn2 | grep "Cpu(s)" | tail -n1. 전자는 Byte Commander가 지적한 장기 평균을 표시합니다.
Oskar Skog

7

CPU 사용량 ( (user+system)/(user+system+idle)0.1 초 이상 평균 ) :

(grep 'cpu ' /proc/stat;sleep 0.1;grep 'cpu ' /proc/stat)|awk -v RS="" '{print "CPU "($13-$2+$15-$4)*100/($13-$2+$15-$4+$16-$5)"%"}'

RAM 사용량 ( (total-available)/total) :

awk '/MemTotal/{t=$2}/MemAvailable/{a=$2}END{print 100-100*a/t"%"}' /proc/meminfo

HDD 사용 (로 마운트 된 볼륨 만 /) :

df | awk '/ \/$/{print "HDD "$5}'

흥미롭게도`free -m | 헤드 -n3 | tail -n1 '은 사용 가능한 메모리로보고합니다.
Oskar Skog

@OskarSkog 해당 명령의 출력을 공유 할 수 있습니까? 나에게 그것은 단순히 총계 / 사용 / 무료 스왑을 인쇄하며 여기에는 관련이 없습니다. 다른 의미가 있거나 free명령이 여전히 별도의-/ + 버퍼 / 캐시 라인이있는 이전 출력 형식을 사용하는 것일 수 있습니다 .
Byte Commander

내 무료는 이전 형식을 사용합니다 : oskog97.com/sshin/free-output.png 변경된 내용은 무엇입니까?
Oskar Skog

3
@OskarSkog "-/ + buffers / cache"행이 제거되었으며 이제 "Mem"행에 "사용 가능한"추가 열이 있습니다. From man free: " 스왑없이 새 응용 프로그램을 시작하는 데 사용할 수있는 메모리의 양을 추정합니다. 캐시 또는 사용 가능한 필드에서 제공하는 데이터와 달리이 필드는 페이지 캐시를 고려하며 항목으로 인해 모든 재생 가능한 메모리 슬래브가 재생되지는 않습니다. / proc / meminfo에서 사용 가능, 커널 3.14에서 사용 가능, 커널 2.6.27 이상에서 에뮬레이션, 그렇지 않으면 무료와 동일) "
Byte Commander
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.