Ciao amici. Il comando sed è un comando abusato dagli amministratori di sistema di tutto il mondo. Viene fondamentalmente utilizzato per sostituire testo con testo in un file di testo con un singolo comando. Ecco perché, oggi, ti presenteremo i primi 20 comandi sed. Per questo, esamineremo quelli più utili e comuni.
I primi 20 comandi sed da usare
Sostituisci una stringa con un'altra stringa
Il comando sed viene utilizzato per sostituire le stringhe. Ma è così flessibile che possiamo personalizzare l'esecuzione in base alle nostre esigenze.
In un file di testo per modificare la stringa macOS
a Linux
dovremmo correre
sed 's/macOS/Linux/' [file]
Quindi, puoi adattare il comando in base alle stringhe che desideri.
2.- Sostituisci un certo numero di occorrenze di una stringa
Il comando precedente sostituisce la stringa solo una volta. È possibile specificare l'ordine di sostituzione della stringa.
sed 's/macOS/Linux/2' [file]
In questo caso, sostituirà solo la seconda occorrenza.
3.- Sostituisci tutte le occorrenze di una stringa
sed 's/macOS/Linux/g' [file]
4.- Sostituisci una stringa su un numero di riga specifico.
Un'altra opzione utile è sostituire una stringa di caratteri su un numero di riga. Questo è utile se conosci bene il file.
sed '[line] s/macOS/Linux/' [file]
Ad esempio, per sostituire una stringa sulla terza riga.
sed '3 s/macOS/Linux/' [file]
5.- Sostituzione dei caratteri all'interno di un intervallo
Per sostituire i caratteri ma entro un intervallo di righe specificato in un file.
sed '30,40 s/macOS/Linux/g' [file]
In questo caso, la stringa verrà sostituita solo tra le righe 30 e 40.
6.- Inserisci interruzioni di riga nei file
È anche possibile inserire un'interruzione di riga vuota. Per ottenere ciò, devi eseguire.
sed G [file]
Molto utile nei file in cui tutto è vicino.
7.- Elimina righe da un file
Sebbene il comando sed venga utilizzato per sostituire le stringhe, puoi effettivamente fare molte cose con esso. Uno di questi è eliminare una riga. Per farlo, corri.
sed 'nd' [file]
Sostituisci n
con il numero della riga da eliminare.
8.- Mostra l'intero file tranne un certo intervallo di righe.
Puoi anche visualizzare un file meno un intervallo di righe.
sed '20,35d' [file]
In questo caso verrà visualizzato l'intero file eccetto dalla riga 20 alla 35.
9.-Visualizza un intervallo specifico di righe in un documento
Se vuoi visualizzare un intervallo specifico all'interno del file, devi eseguire il seguente comando:
sed -n 'Ni,Nlp' [file]
Dove devi sostituire Ni
con il numero di riga iniziale e Nl
con la fine.
sed -n '5,15p' [file]
In questo caso, mostrerà l'intervallo di righe da 5 a 15.
10.- Elimina le righe corrispondenti in un file di testo
Puoi anche eliminare le righe che corrispondono a una specifica stringa di testo.
sed '/macOS/d' [file]
In questo caso, tutte le righe con la parola macOS
sarà cancellato.
11.- Stampa il numero di riga nel file
Per stampare il numero di riga in un file di testo con il comando sed
. Per ottenere ciò, dobbiamo solo eseguire il seguente comando.
sed '=' [file]
In questo modo quando il file viene stampato, verrà visualizzato il numero di riga.
12.- Elimina tutte le righe di un file tranne quelle specificate.
Ora puoi eliminare tutte le righe in un file tranne quelle specificate.
sed '15,21!d' [file]
In questo modo il file cancellerà tutte le righe tranne quelle da 15 a 21.
13.- Sostituisci tutti i caratteri maiuscoli con quelli minuscoli usando sed
Il caso di maiuscolo e minuscolo è sempre rilevante quando si tratta di file di testo. Quindi con sed
puoi sostituire tutti i caratteri maiuscoli con quelli minuscoli.
sed 's/\(.*\)/\L\1/' [file]
14.- Elimina qualsiasi riga che inizia con una stringa
Se vuoi eliminare tutte le righe che iniziano con una stringa specifica, puoi eseguire qualcosa di simile a questo
sed '/^macOS/d' [file]
15.- Sostituisci tutte le occorrenze di una stringa da una riga alla fine
In questo caso, puoi sostituire una stringa con un'altra da una determinata riga alla fine della stringa
sed '3,$s/macOS/Linux/g' [file]
In questo caso ho scelto la riga 3, ma può essere qualsiasi riga.
16.- Stampa una serie di righe da un file
Se vuoi stampare solo una serie di righe puoi farlo anche con sed
come segue
sed -n '2,10p' [file]
In questo esempio verranno stampate tutte le righe da 2 a 10.
Elimina le righe vuote dopo ogni riga in un file
L'eliminazione di righe vuote può essere molto utile nei file di configurazione o in altri file in cui è necessario elaborarla.
Per eliminare queste righe vuote puoi eseguire
sed '/^$/d'[file]
È così semplice.
Metti in maiuscolo il primo carattere di ogni parola
Questa è una delle opzioni più utili e più utilizzate. Puoi sostituire la prima lettera di ogni parola con l'equivalente in lettere maiuscole.
Per ottenere ciò, esegui semplicemente questo comando
sed 's/\([a-z]\)\([a-zA-Z0-9]*\)/\u\1\2/g'
È facile.
Rimuovi l'ultima riga di un file
Ci sono modifiche che dobbiamo apportare in un file di configurazione e di solito lo posizioniamo nell'ultima riga. E se volessimo eliminarlo? Bene, puoi rimuovere l'ultima riga di un file eseguendo
sed '$d' [file]
20.- Mostra l'aiuto del comando sed
Infine, puoi consultare la guida per il comando esegui
sed --help
E otterrai una schermata di output come questa.
Grazie per la lettura e spero che ti sia piaciuto e che possa essere utile per il tuo lavoro.
pagina di comando sed
Altri comandi da terminale