Come liberarsi dei personaggi ^ M in vi

Se sei un normale vi utenti, avrete notato che alcuni file, quando viene modificato in vi, contengono caratteri ^ M alla fine di linea.

Questo di solito accade quando si modifica un file utilizzando alcuni windows-editor, poi trasferimento in macchina * nix.
Fortunatamente, è facilmente sbarazzarsi di questo carattere di controllo. Mentre in vi, eseguire il seguente comando:

: 1, $ s / ^ M / / g

Nota importante: non digitare manualmente un accento circonflesso poi il carattere M capitale. In realtà, al fine di tipo ^ M, premere CTRL + V seguito da CTRL + M.

Una breve nota: il comando precedente cerca il carattere ^ M di partenza sulla linea 1, in sostituzione di essa ($ s) con niente (e quindi avere le due barre consecutive avanti / senza niente in mezzo). E questa sostituzione può essere fatto globalmente (g).

3 commenti

Labbra protesici 21 gennaio 2011 alle 10:26

Um ... solo una nota, la tua spiegazione del $ è sbagliato.

1, $ significa "linea 1 fino alla fine del file"
s significa "cerca e sostituisci" (o qualche queste sciocchezze)
g significa tecnicamente "farlo attraverso tutta la linea" (in caso contrario lo fa solo la prima volta lo trova)
il resto della tua spiegazione è stata spot-on. Ma, per esempio, si potrebbe dire:

3,15 s / ^ M / /

a significare, sostituire tutte le occorrenze sulle linee da 3 a 15. La "g" probabilmente non importa a voi, perché si ottiene solo uno per riga comunque.

~ Protesica Labbra

admin 31 gennaio 2011 alle 08:20

evviva

LTC 6 GENNAIO 2012 alle 10:40

s significa "sostituire" non "cerca e sostituisci". E non è una sciocchezza.
Ricerca, naturalmente, si ottiene usando con la barra / personaggio.

Lascia un commento

Il tuo commento