Suche…


Bemerkungen

Das Zeichen ^M steht für einen Wagenrücklauf in Vim ( <cm> oder nur <CR> ). Vim zeigt dieses Zeichen an, wenn mindestens eine Zeile in der Datei LF Zeilenenden verwendet. Mit anderen Worten, wenn Vim eine Datei als fileformat=unix aber in einigen Zeilen Wagenrücklauf ( CR ) enthalten, werden die Wagenrücklaufe als ^M angezeigt.

Eine Datei mit einer einzelnen Zeile mit LF Zeilenende und mehreren Zeilen mit CRLF Zeilenenden wird meistens durch falsches Bearbeiten einer auf einem MSDOS-System erstellten Datei erstellt. Zum Beispiel, indem Sie eine Datei unter einem MSDOS-Betriebssystem erstellen, auf ein UNIX-basiertes System kopieren und dann einen Hash-Bang-Sting (z. B. #!/bin/sh ) mit Tools unter dem UNIX-basierten Betriebssystem voranstellen.

Konvertieren einer DOS-Textdatei in eine UNIX-Textdatei

Häufig haben Sie eine Datei, die in DOS oder Windows bearbeitet wurde und die Sie unter UNIX anzeigen. Dies kann wie folgt aussehen, wenn Sie die Datei mit vi anzeigen.

First line of file^M
Next Line^M
And another^M

Wenn Sie das ^ M entfernen möchten, können Sie jedes ^ M von Hand löschen. Alternativ können Sie in vi nach dem Drücken von Esc an der Eingabeaufforderung des Befehlsmodus Folgendes eingeben:

:1,$s/^M//g

Wobei ^ M zusammen mit Ctrl und v eingegeben wird und dann Ctrl und m zusammen.

Dies führt den Befehl von der ersten Zeile '1' bis zur letzten Zeile '$' aus, der Befehl besteht darin, '' das 'M' durch nichts zu ersetzen 'und' global '' g '.

Verwenden des Dateiformats von VIm

Wenn Vim öffnet eine Datei mit <CR><NL> Zeilenenden (gemeinsam auf MS - DOS - basierte Betriebssysteme, die auch als CRLF ) es eingestellt wird fileformat zu dos , können Sie , was Sie sich an:

:set fileformat?
  fileformat=dos

Oder nur

:set ff?
  fileformat=dos

Um es in <NL> -Zeilenenden umzuwandeln (üblich bei den meisten UNIX-basierten Betriebssystemen, auch als LF ), können Sie die fileformat ändern.

:set ff=unix


Modified text is an extract of the original Stack Overflow Documentation
Lizenziert unter CC BY-SA 3.0
Nicht angeschlossen an Stack Overflow