쉘 스크립트에서 오른쪽 숫자 3 정수를 인쇄하는 방법 [닫기]

쉘 스크립트에서 오른쪽 숫자 3 정수를 인쇄하는 방법 [닫기]

쉘 스크립트에서 입력 변수의 마지막 3자리를 인쇄하는 방법 예: 입력 변수가 236548이고 출력은 548이어야 합니다.

답변1

숫자가 변수에 저장되어 있다고 가정합니다 var.

echo "${var#${var%???}}"

여기에서는 ${var%???}마지막 세 문자까지 확장됩니다.$var 삭제됨, 전면에서 제거해야 할 부분은 남겨 둡니다 $var. 이 결과는 의 시작 부분에서 이러한 문자를 제거하는 데 사용됩니다 $var.

즉, "처음부터 시작하여 $var마지막 세 문자를 제거한 후 남은 모든 항목을 제거한 $var다음 echo이를 사용하여 호출합니다."

답변2

쉘이 음수 오프셋(예: , bash) 을 사용한 하위 문자열 확장을 지원하는 경우 다음을 수행할 수 있습니다.kshzsh

$ var=236548
$ echo "${var: -3}"
548

의 마지막 세 문자를 에코합니다 var.

답변3

tail다음 명령을 시도해 볼 수 있습니다 .

$> echo 236548 | tail -c 4
548

변수의 경우 $:를 사용할 수 있습니다.

$> echo "$MYVAR" | tail -c 4

관련 정보