GNU/Linux >> Linux Esercitazione >  >> Linux

Come rimuovere le righe vuote da un file (inclusi tabulazione e spazi)?

Voglio rimuovere tutte le righe vuote da un file. Anche se la riga contiene spazi o tabulazioni, dovrebbe anche essere rimossa.

Risposta accettata:

Solo grep per non spazi vuoti:

grep '[^[:blank:]]' < file.in > file.out

[:blank:] , all'interno di intervalli di caratteri ([...] ), è chiamata classe di caratteri POSIX. Ce ne sono alcuni come [:alpha:] , [:digit:][:blank:] corrisponde allo spazio bianco orizzontale (nelle impostazioni locali POSIX, ovvero spazio e tabulazione, ma in altre versioni potrebbero essercene di più, come tutti i caratteri di spaziatura orizzontale Unicode nelle versioni locali UTF8) mentre [[:space:]] corrisponde agli spazi bianchi orizzontali e verticali (come [:blank:] oltre a cose come la scheda verticale, il feed dei moduli...).

grep '[:blank:]'

Restituirebbe le righe che contengono uno qualsiasi dei caratteri, : , b , l , a , n o k . Le classi di caratteri sono riconosciute solo all'interno di [...] e ^ entro [...] nega l'insieme. Quindi [^[:blank:]] indica qualsiasi carattere tranne quelli vuoti.


Linux
  1. Come rimuovere le righe duplicate all'interno di un file di testo?

  2. Stampa linee tra (e inclusi) due motivi?

  3. Come rimuovere la Bom da un file Utf-8?

  4. Come rimuovere le applicazioni Kde e Xfce dal menu di Gnome?

  5. Conta righe, parole e caratteri da un file in Linux

Come rimuovere la password da un file PDF in Linux

Come rimuovere le righe da un file usando il comando Sed

Come rimuovere (^M) caratteri da un file in Linux

Come rimuovere gli spazi dai nomi dei file in Linux

Come rimuovere tutti i caratteri di spazio bianco da un file di testo

Come installare il software dal codice sorgente... e rimuoverlo in seguito