내가 가지고 있다고 말해
npmv="3.4.5";
첫 번째 점 앞에 모든 문자를 가져오는 가장 간단한 방법은 무엇입니까? 이 경우 "3"이 될까요?
답변1
npmv="3.4.5"
major=${npmv%%.*}
printf 'The major version number is %s\n' "$major"
매개변수 대체 ${variable%%pattern}
가 제거됩니다.가장 긴pattern
의 값과 일치하는 접미사 문자열입니다 $variable
. 패턴은 정규 표현식이 아닌 파일 이름 와일드카드 패턴으로 처리됩니다. 이는 모든 POSIX 쉘에서 작동하는 표준 매개변수 대체입니다.
같은 일이지만, 단일을 사용하면 %
예제에서 문자열의 끝만 제거됩니다(.5
가장 짧은접미사 패턴 일치). 접두사 문자열의 경우 #
대신 를 사용하세요 %
.
당신은 또한 볼 수 있습니다매개변수 확장에 관한 POSIX 표준의 일부, 그리고 쉘 매뉴얼.