2つのファイルがあります。Dそしてティー。私はファイルtの最初の行の後にタブが続き、その後dの最初の行が来るようにこれらのファイルをマージできるようにしたいと思います。短い行ではpaste t d
うまくいくようです。
$ cat d t
Highly reactive metals in group 1A of the periodic table.
Fairly reactive metals in group 2A of the periodic table.
alkali metals
alkaline earth metals
$ paste d t
Highly reactive metals in group 1A of the periodic table. alkali metals
Fairly reactive metals in group 2A of the periodic table. alkaline earth metals
$ paste t d
alkali mHighly reactive metals in group 1A of the periodic table.
alkalineFairly reactive metals in group 2A of the periodic table.
完全な文章を貼り付けようとすると不思議に動作するようです。上記のように、用語は最初の8文字に縮小されます。
$ paste t d > temp
$ gedit temp &
$ vim temp
geditを開くと、各用語の後に改行文字が表示されます。 Vimは以下を示しています:
alkali metals^M Highly reactive metals in group 1A of the periodic table.
alkaline earth metals^M Fairly reactive metals in group 2A of the periodic table.
まあ、それは簡単に修正できると思います。:%s/^V^M//g
すべてのキャリッジリターンを削除し、すべてが正しく表示されます。しかし、これらのキャリッジリターンは最初にどのように現れましたか?
私の質問には、Windowsテキストファイルのキャリッジリターンが含まれており、Unixのような環境で奇妙に動作しますが、重複しません。この問題。問題は似ていますが、症状はまったく異なります。 Web検索で同様の問題のケースが十分に見つからなかったため、キャリッジリターンが犯人であるかどうかを判断するのに約1時間かかりました。それで私はこの問題を直接解決して投稿することになりました。