^ M文字とは何ですか?


48

TexPadが作成しています。私はそれがデッドキーの下にあることを知っています。私はそれが名前であることを思い出すことができません。

青い文字:

ここに画像の説明を入力してください

文書から大量に削除したいだけです。

どのように入力できますか?


回答:


53

これはキャリッジリターンとして知られています。

あなたはしているが、使用している場合vim、あなたは挿入モードとタイプを入力することができますCTRL- - 。v CTRL mそれ^ Mは、とキーボードと同等である\ rを

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、完了:)
ラメシュ14年

ありがとう、@ Ramesh。これらのキーボードコードの実行方法がわかりません。あなたはいい人です。
mikeserv 14

1
@mikeserv、<kbd>キー</ kbd>を使用して、キーボードシンボルを使用します。:)
ラメシュ14

2
「それは何と呼ばれるか」という実際の質問に答えて+1
アンドリューロリアン

7

コード

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

^Mコマンドの入力中は、使用しないでくださいshift+6 & M。を使用する必要がありますctrl+v+m


1
Unix Stackexchangeへようこそ!コード用に本文をフォーマットする方法に注意してください。最後に感謝や他の人を必要としません。
レオレオポルトヘルツ준영


-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 14年

これは、おそらくそれを読む./filecatに消去するでしょう。パイプラインのすべてのコマンドは並行して起動され、影響を受けるコマンドが実行される前に、リダイレクトがシェルによって処理されます。
jlliagre

@mikeservは、ヒアドキュメントを含む$(cat)修正:または(重要な)末尾の空行または終端されていない最後の行、または利用可能なメモリに収まらないデータです。(rm file; tr -d '\r' >file) <fileファイルを再作成しても問題ない場合(所有者/グループ/権限/ ACL /コンテキスト/などをリセット)、それらを回避します
dave_thompson_085
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.