Metodo 1: come eliminare tutte le righe vuote in un file di testo usando SED
Prima di scavare nella profondità di questo metodo, comprendiamo la sintassi per eliminare le linee vuote usando SED:
Sintassi
sed [opzioni] '/^$/d' [nome file]
IL '/^$/d'è la parte fondamentale di questo comando; Dove "^"Il simbolo mostra che la cancellazione deve essere eseguita dai mezzi iniziali dalla prima riga; "$"Rappresenta che deve andare fino all'ultima riga del file di testo e"D"Mostra che la cancellazione è in corso.
Questa sezione ti guiderà ad eliminare tutte le righe in un file di testo con l'aiuto di Stream Editor (SED):
Abbiamo creato un file di testo "eliminare.TXT; In primo luogo, ottieni il contenuto di questo file utilizzando "gatto"Comando come indicato di seguito e abbiamo usato"-N"Opzione con esso, in modo che possiamo ottenere anche i numeri di linea:
Si osserva che ci sono più righe vuote e stanno influenzando l'estetica di questo file di testo e i lettori potrebbero non prestare attenzione a tale contenuto.
$ cat -n elimina.TXT
Quindi, per evitare la situazione sopra indicata; È necessario rimuovere le righe vuote per semplificare il processo di lettura; Il comando menzionato di seguito rimuoverà tutte queste righe da "eliminare.TXT" file.
Ora puoi notare che le righe vuote vengono lavate e solo quelle linee sono stampate che contengono un po 'di testo, ma il risultato viene visualizzato solo sul terminale mentre il file originale rimane lo stesso:
$ sed '/^$/d' elimina.TXT
Se si desidera rimuovere le righe vuote e aggiornare anche il file originale, è necessario utilizzare l'opzione sul posto "-io"E il comando di seguito ti aiuterà a farlo:
$ sed -i '/^$/d' elimina.TXT
Metodo 2: come eliminare le righe vuote selezionate in un file di testo usando SED
La sintassi per eliminare le righe specifiche in un file di testo è scritta di seguito:
Sintassi
sed [options] '(line-number) d' [nome file]
La parte principale della sintassi su cui si basa il comando è "(Numero di linea) D '"; Devi mettere il numero esatto della riga di linea vuota in "(Numero di linea)"E la lettera"D"Mostra che il numero di riga inserito verrà eliminato:
È possibile eliminare alcune righe specifiche all'interno di un file di testo usando il comando SED; Abbiamo creato un nuovo file di testo "nuovo.TXT"Per questa sezione. Ad esempio, l'output del comando sotto mostra quel numero di riga "2" è vuoto:
$ cat -n newfile.TXT
E se si desidera eseguire il comando per eliminare questa riga solo, allora devi specificare il numero di riga come abbiamo fatto nel comando menzionato di seguito:
$ sed '2d' newfile.TXT
È inoltre possibile eliminare le righe consecutive utilizzando questo metodo; Ad esempio, il "nuovo.TXT"Il file ha 3 righe vuote"4,5,6"Come si può vedere nell'immagine qui sotto:
$ cat -n nuovo.TXT
Per rimuovere queste tre linee consecutive; devi inserire ","Tra i numeri della riga di partenza e finale come si può vedere nel comando seguente:
$ sed '4.6d' nuovo.TXT
Infine, puoi anche usare l'opzione in atto "-io"Per salvare le modifiche in modo permanente al file come senza questa opzione, il comando SED stampa il risultato sul terminale mentre abbiamo modificato il comando sopra per usarlo con"-io" opzione:
$ sed -i '4.6d' nuovo.TXT
Conclusione
Ubuntu supporta diversi modi per manipolare i dati in un file di testo; Ad esempio, è possibile utilizzare l'editor di testo predefinito di Ubuntu, l'editor Nano ecc. Tuttavia, l'utilità della riga di comando SED di Ubuntu sta guidando tutti questi redattori a causa delle sue funzionalità come accedere al file dal terminale e apportare modifiche senza aprirlo. In questo articolo, abbiamo usato il comando sed per rimuovere le righe vuote dal file di testo e descritto due metodi per questa operazione. "Metodo 1"È adatto specificamente quando si dispone di centinaia di righe in un file di testo e si desidera eliminare tutte le righe vuote contemporaneamente: d'altra parte,"Metodo 2"È adatto per eliminare le linee vuote in un piccolo documento in cui è possibile eliminare le righe una per uno. Tuttavia, devi cercare linee vuote da solo, se vuoi seguire "Metodo 2": Quindi, se il confronto viene disegnato tra i due metodi,"Metodo 1"Superforms"Metodo 2"Informazioni sulla cancellazione di linee vuote.