백분율 기호 제거 [중복]

백분율 기호 제거 [중복]

이 쉘 스크립트에서 백분율 기호 '%'를 제거해 보십시오.

df -h | awk '$NF=="/"{printf "Percentage: %s \n", $5}'

산출:

Percentage: 2% 

이렇게 출력하고 싶다

Percentage: 2

미안, 내 영어는 좋지 않아

답변1

$5의 값이 숫자 값으로 해석되도록 강제합니다 . 다음 형식을 사용하여 인쇄하기 전에 값에 0을 추가하면 됩니다 %s.

df -h | awk '$NF == "/" { printf "Percentage: %s\n", 0+$5 }'

또는 다음을 %d사용하여 값을 문자열 대신 10진수로 형식화합니다.

df -h | awk '$NF == "/" { printf "Percentage: %d\n", $5 }'

또는 인쇄하기 전에 문자열에서 마지막 문자를 명시적으로 제거하십시오.

df -h | awk '$NF == "/" { printf "Percentage: %s\n", substr($5,1,length($5)-1) }'
df -h | awk '$NF == "/" { sub(".$","",$5); printf "Percentage: %s\n", $5 }'

또는 %입력에서 모든 문자를 제거하십시오.

df -h | tr -d % | awk '$NF == "/" { printf "Percentage: %s\n", $5 }'
df -h | awk '{ gsub("%","") } $NF == "/" { printf "Percentage: %s\n", $5 }'

답변2

기호를 제거하는 방법도 있습니다 %.

df -h | awk '$NF == "/" { printf "Percentage: %s\n", int($5) }'

관련 정보