GNU의 확장이 탭을 8열 미만으로 변환하는 이유는 무엇입니까?

GNU의 확장이 탭을 8열 미만으로 변환하는 이유는 무엇입니까?

을 사용하면 expand탭을 몇 개의 공백으로 변환하는지 이해할 수 없습니다. 에서 info expand:

기본적으로 확장은 모든 탭 문자를 공백으로 변환합니다. 출력에서 백스페이스 문자를 유지하며 탭에서 계산된 열 수를 줄입니다. 기본 작업은 -t 8(8개 열마다 탭 설정)과 동일합니다.

하지만:

$ cat file
aa  bb
$ cat -A file
aa^Ibb$
$ wc -m file
6 file
$ expand file > file2
$ cat -A file2
aa      bb$
$ wc -m file2
11 file2

여기에서는 탭을 6개의 열로 변환합니다. 왜?

답변1

~에서오픈그룹 설명expand:

이것확장유틸리티는 파일이나 표준 입력을 표준 출력에 기록하고 해당 문자를 다음 탭 정지까지 채우는 데 필요한 <tab>문자 로 바꿔야 합니다.<space>

-t 8장소 탭멈추다8자로 구분됩니다. 입력의 aa탭( ) 앞 줄 시작 부분에 두 개의 다른 문자가 있으므로 다음 탭 정지로 이동하는 데 6개의 공백만 필요합니다.

관련 정보