BASH에서 "\t" 및 "탭" 구분 기호와 "잘라내기"는 무엇을 의미합니까?

BASH에서 "\t" 및 "탭" 구분 기호와 "잘라내기"는 무엇을 의미합니까?

이 명령에서:

cut -f2 -d$'\t' 

( '\t') 무슨 뜻이에요? 다른 질문을 보고 "탭" 구분 기호 아이디어를 얻었지만 여전히 '\t'특정 항목에 대한 바로가기, 기호 또는 명령을 알고 싶습니다.

BASH에서 "cut"을 사용하여 "탭" 구분 기호를 정의하는 방법

답변1

가로 탭 문자는 기본적으로 출력 시 커서를 다음 8개 공백의 배수로 이동하는 문자입니다.

예:

$ printf '1234567*1234567*\na\thello\tthere\n'
1234567*1234567*
a       hello   there

위에서 볼 수 있듯이 각 탭 문자에 대해 커서는 8개의 공백의 다음 배수로 전달됩니다.

\t탭 문자는 C 프로그래밍 언어와 동일한 방식 으로 작성됩니다 . with를 포함하는 문자열을 셸 \t이나 C(및 기타 여러 위치)에 인쇄하면 두 문자 합계 대신 가로 탭 문자가 생성됩니다.printfprintf()\t

bash셸 에는 $'...'특별한 "C 이스케이프 문자열"이 있습니다. 여기서 \t(탭) 또는 (개행)과 같은 \n이스케이프 시퀀스는 printf()C와 동일하게 처리됩니다. 이에 대해서는 bash설명서의 "참조" 섹션에 설명되어 있습니다.

데이터가 입력되는 필드를 잘라낼 때 탭 문자를 구분 기호로 사용하도록 cut -d $'\t'지시 합니다 . cut그러나 이런 일이 발생합니다.기본cut전혀 사용하지 않으면 구분 기호가 사용되므로 명령에 필요하지 않습니다 .-d-d $'\t'

관련 정보