문자열의 마지막 공백 뒤의 마지막 n자를 분할합니다.

문자열의 마지막 공백 뒤의 마지막 n자를 분할합니다.

문자열을 반환합니다 myString=$(some_command).

결과 값 myString은 다음과 같습니다.

there are spaces in this line.  

bashn결과 값에서 마지막 공백 뒤의 마지막 몇 문자 만 추출하려면 어떤 특정 명령을 입력할 수 있습니까 myString?

위에 표시된 예제 값의 경우 myString5자를 추출하고 싶습니다.line.

그러나 "이 줄에는 공백이 많습니다"와 같은 다른 값의 경우 myString원하는 슬라이싱 출력은 다음과 같습니다.spaces.

답변1

변수가 주어지면

myString='there are spaces in this line.'

다음을 사용하여 공백으로 끝나는 가장 긴 선행 구성요소를 제거할 수 있습니다.매개변수 확장 ${myString##* }예를 들어

$ myString='there are spaces in this line.'
$ echo "${myString##* }" 
line.
$
$ myString='this line has many spaces.'
$ echo "${myString##* }"
spaces.

관련 정보