^ M 문자는 무엇입니까?


48

TexPad가 만들고 있습니다. 나는 그것이 데드 키 아래에 있다는 것을 알고 있습니다. 나는 그것이 이름이라는 것을 기억할 수 없다.

파란색 문자 :

여기에 이미지 설명을 입력하십시오

문서에서 대량으로 제거하고 싶습니다.

어떻게 입력 할 수 있습니까?


답변:


53

캐리지 리턴이라고합니다.

당신이 사용하는 경우 vim당신은 삽입 모드와 유형을 입력 할 수 있습니다 CTRL- v CTRL- m. 즉, ^ M은 할 수있는 키보드와 동일 연구를 \ .

0x0D16 진 편집기에 삽입 하면 작업이 수행됩니다.

제거하는 방법?

명령을 사용하여 제거 할 수 있습니다 perl -p -i -e "s/\r//g" filename.

OP 가이 답변의 의견에서 제안했듯이 여기 에서도 시도해 dos2unix filename볼 수 있습니다.

주석에서 @steeldriver가 제안한 것처럼 vim 편집기를 연 후 esc키를 누르고을 입력하십시오 :set ff=unix.

참고 문헌

https://stackoverflow.com/questions/1585449/insert-the-carriage-return-character-in-vim

https://stackoverflow.com/a/7742437/1742825

-ksh : sales_ext.ksh : 찾을 수 없음 [그런 파일이나 디렉토리가 없습니다]


3
vi / vim :set ff=unix도 언급 할 가치가 있습니다.
steeldriver

@steeldriver, done :)
Ramesh

감사합니다, @Ramesh. 해당 키보드 코드를 수행하는 방법을 모르겠습니다. 당신은 좋은 사람입니다.
mikeserv 2016

1
@mikeserv에서 <kbd> 키 </ kbd>를 사용하여 키보드 기호를 사용하십시오. :)
Ramesh 2016

2
실제 질문에 대답 +1 "이라는 것입니다"
앤드류 로리엔

6

암호

sed -i 's/^M//' filename.txt

^M명령을 입력하는 동안을 사용하지 마십시오 shift+6 & M. 을 사용해야합니다 ctrl+v+m.


1
유닉스 스택 교환에 오신 것을 환영합니다! 본문 형식을 지정하는 방법에 유의하십시오. 결국 감사와 다른 사람이 필요하지 않습니다.
Léo Léopold Hertz 준영


-1

Ramesh가 지적했듯이 CTRL+ V CTRL+ M는 리터럴 문자를 가져와야합니다.이 작업에만 국한되지는 않지만 vim모든 표준 모드 tty에서 동일한 작업을 수행 할 수 있어야합니다.

cat ./file | tr -d '\r' >./file

... 일을 할 수도 있습니다.


1
같은 파일을 읽고 쓰는데 문제가되지 않습니다
iruvar

@ 1_CR |pipe파일을 읽었습니다 . 사실, 중간 tmp 파일은 더 강력하지만 파이프의 버퍼는 충분해야합니다. 여전히 tr -d '\r' <<FILE >./file\n$(cat ./file)\nFILE\n파일이 없으면 파일이 \000문자를 포함하지 않는 한 확실 합니다.
mikeserv 2016 년

읽을 기회가 ./file있기 전에 지우는 것보다 더 많이 할 cat것입니다. 파이프 라인의 모든 명령이 병렬로 시작되고 영향을받는 명령이 실행 되기 전에 셸에서 리디렉션이 처리됩니다 .
jlliagre

@mikeserv는 heredoc 포함 $(cat)수정 : 또는 (중요한) 후행 빈 행 또는 종료되지 않은 마지막 행 또는 사용 가능한 메모리에 맞는 것보다 많은 데이터입니다. (rm file; tr -d '\r' >file) <file파일을 다시 작성해도 문제가 해결되지 않습니다 (소유자 / 그룹 / permbits / ACL / context / etc)
dave_thompson_085
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.