Bash에서 문자열의 정의는 무엇입니까?

Bash에서 문자열의 정의는 무엇입니까?

Bash에서 문자열의 정의는 무엇입니까?

Bash는 문서의 여러 위치에서 "문자열"이라는 용어를 사용합니다. 예를 들어 =~정규식 일치에 사용되는 문서 연산자에 사용됩니다.

== 및 !=와 우선순위가 동일한 추가 이항 연산자 =~를 사용할 수도 있습니다. 그것을 사용할 때,연산자의 오른쪽은 POSIX 확장 정규식으로 처리되고 이에 따라 일치됩니다(regex(3)에서처럼).

이 섹션에는 DEFINITIONS문자열 정의가 없습니다 .

DEFINITIONS
       The following definitions are used throughout the rest of this document.
       blank  A space or tab.
       word   A sequence of characters considered as a single unit by the shell.  Also known as a token.
       name   A word consisting only of alphanumeric characters and underscores, and beginning with an alphabetic character or an underscore.  Also referred to as an identifier.
       metacharacter
              A character that, when unquoted, separates words.  One of the following:
              |  & ; ( ) < > space tab newline
       control operator
              A token that performs a control function.  It is one of the following symbols:
              || & && ; ;; ;& ;;& ( ) | |& <newline>

그렇다면 Bash의 문자열은 정확히 무엇입니까? IFS환경 변수에 공백이나 문자를 포함 할 수 있나요 ?

참고: 문자열은 일반적으로 알파벳의 일련의 기호로 정의된다는 것을 알고 있습니다.

답변1

Bash 매뉴얼은 문자열을 정의하지 않지만그것은 그렇게 말한다

이는 IEEE POSIX 사양(IEEE 표준 1003.1)의 IEEE POSIX 쉘 및 도구 부분을 일관되게 구현하기 위한 것입니다.

그래서 우리는 가정할 수 있습니다문자열의 POSIX 정의적용 가능:

첫 번째 널 바이트로 끝나고 이를 포함하는 연속 바이트 시퀀스입니다.

관련 정보