텍스트 파일의 후행 공백을 인쇄하고 볼 수 있기를 원합니다(제거하지 않고 표시만 함).
인쇄되지 않는 문자를 표시하려고 시도했지만 cat -v
예상대로 표시되지 않습니다(선 사이에 시각적 차이가 없음). 예:
$ printf "foo\nbar \t\n" > file.txt
$ cat -v file.txt
foo
bar
git diff
인쇄/표시 공백이란 특수 문자, 색상(예: 파일을 사용하여 표시할 때 ) 또는 이와 유사한 것을 사용하지 않고 다른 줄과 비교하여 후행 공백이 있음을 시각적으로 인간이 나타내는 것을 의미합니다.
다른 방법이 있나요?
cat
참고: 저는 macOS Sierra를 사용하고 있지만 GNU 및 BSD 명령 에 모두 액세스할 수 있습니다 .
$ type -a cat
cat is /usr/local/opt/coreutils/libexec/gnubin/cat
cat is /bin/cat
$ cat --version
cat (GNU coreutils) 8.28
$ /bin/cat --version
/bin/cat: illegal option -- -
usage: cat [-benstuv] [file ...]
답변1
gnu cat
이에 대한 스위치가 있으므로 -E
다음과 같은 입력으로
printf " one \ntwo \t\n"
그것은 인쇄됩니다
one $
two $
sed
"원시" 모드에서 사용하는 등 해당 동작을 에뮬레이트하는 방법에는 여러 가지가 있습니다 .
sed -n l infile
또는
paste -d '$' infile /dev/null
$
또는 텍스트 처리 도구를 사용하여 각 줄바꿈 앞에 를 추가하세요 .
다음과 같은 것을 시도해 볼 수도 있습니다.
less -p '[[:blank:]]+$' infile
패턴을 강조 표시합니다(이 경우 후행 공백).