GNU/Linux >> Linux Esercitazione >  >> Linux

Come scoprire le terminazioni di riga in un file di testo?

Nella shell bash, prova cat -v <filename> . Questo dovrebbe visualizzare i ritorni a capo per i file di Windows.

(Questo ha funzionato per me in rxvt tramite Cygwin su Windows XP).


Ubuntu 14.04:

semplice cat -e <filename> funziona bene.

Questo mostra le terminazioni di riga Unix (\n o LF) come $ e terminazioni di riga di Windows (\r\n o CRLF) come ^M$ .


Puoi usare il file utility per darti un'indicazione del tipo di terminazioni di riga.

Unix:

$ file testfile1.txt
testfile.txt: ASCII text

"DOS":

$ file testfile2.txt
testfile2.txt: ASCII text, with CRLF line terminators

Per convertire da "DOS" a Unix:

$ dos2unix testfile2.txt

Per convertire da Unix a "DOS":

$ unix2dos testfile1.txt

La conversione di un file già convertito non ha alcun effetto, quindi è sicuro eseguirla alla cieca (ovvero senza testare prima il formato) sebbene si applichino le solite limitazioni di responsabilità, come sempre.


In vi ...

:set list per vedere le terminazioni di riga.

:set nolist per tornare alla normalità.

Anche se non penso che tu possa vedere \n o \r\n in vi , puoi vedere che tipo di file è (UNIX, DOS, ecc.) per dedurre quali terminazioni di riga ha...

:set ff

In alternativa, da bash puoi usare od -t c <filename> o solo od -c <filename> per visualizzare i ritorni.


Linux
  1. Come trovare parentesi non corrispondenti in un file di testo?

  2. Come posso scoprire il tipo MIME di un file (Content-Type)?

  3. Come rimuovo le nuove righe da un file di testo?

  4. Come salvare l'output di questo comando awk su file?

  5. Come si aggiunge del testo a un file?

Come trovare una stringa in un file su Linux

Come trovare file contenenti una stringa di testo specifica in Linux

Come trovare e sostituire testo, parola o stringa in un file

Come convertire un file Windows in un file UNIX

Come scoprire quale processo sta usando un file in Linux?

Come scoprire quale file si trova su un particolare settore