cat > file
Amy looked at her watch. He was late. The sun was setting but Jake didn’t care.
wc file
1 16 82 file
wc
이 경우 명령이 3개의 추가 문자를 반환하는 이유를 누군가 설명할 수 있습니까 ?
답변1
wc
샘플 파일에 이상한 유니코드 아포스트로피가 포함되어 있기 때문에 3개의 문자가 더 표시됩니다 ’
(대부분 브라우저나 텍스트 편집기에서 콘텐츠를 복사했기 때문일 수 있음).
$ cat file
Amy looked at her watch. He was late. The sun was setting but Jake didn’t care.
$ wc file
1 16 82 file
순수한 ASCII 아포스트로피를 사용하십시오 '
.
$ cat file2
Amy looked at her watch. He was late. The sun was setting but Jake didn't care.
$ wc file
1 16 80 file2
wc
기본적으로 각 바이트 수를 표시합니다.수동:
파일당 개행, 단어 및 바이트 수
문자 수를 계산하려면 -m
다음 매개변수를 사용할 수 있습니다.
$ cat file
Amy looked at her watch. He was late. The sun was setting but Jake didn’t care.
$ wc -m file
80 file.txt
답변2
파일을 파이프하여 xxd
ASCII와 나란히 16진수 출력을 확인하면 보거나 인쇄할 수 없는 추가 문자가 있는지 확인할 수 있습니다.
$ cat file
one and two
$ cat file | wc
1 3 18
$ cat file | xxd
00000000: 6f6e 65e2 808f 2061 6e64 20e2 808f 7477 one... and ...tw
00000010: 6f0a o.
답변3
wc
문자가 아닌 바이트를 계산합니다. 사용해야하는 문자 수를 계산하려면-m
옵션:
cat > file
Amy looked at her watch. He was late. The sun was setting but Jake didn’t care.
wc -l -w -m file
1 16 80 file
나머지 "추가 문자"는 실제로 파일 끝에 있는 줄 바꿈입니다.