쉘 스크립트에서 ${p:2:1}의 의미

쉘 스크립트에서 ${p:2:1}의 의미

${p:2:1}누구든지 다음과 같은 쉘 스크립트에서 이것이 무엇을 의미하는지 말해 줄 수 있습니까 ?

var1=""
for p in [1,2,3,4]
do
    var1="${var1} ${p:2:1}"
done

답변1

이것은매개변수 확장(Bash 매뉴얼), 특히 다음 형식:

${parameter:offset:length}

이를 "하위 문자열 확장"이라고 설명합니다. 문자를 offset찾을 위치(0부터 시작)부터 변수에서 문자를 추출합니다 length. 귀하의 경우 ${p:2:1}세 번째 문자를 추출하십시오.

예:

$ p=abcd
$ echo "${p:2:1}"
c

답변2

그것은 하위 문자열입니다. 문자열의 두 번째 문자(0부터 계산)에서 p길이 1의 하위 문자열을 사용합니다.

관련 정보