sed (Unix)

Da Wikipedia, l'enciclopedia libera.
Vai alla navigazione Vai alla ricerca
Sed
software
GenereEditor di testo
SviluppatoreLee E. McMahon
Data prima versione1974
Sistema operativoLinux

sed (abbreviazione dalla lingua inglese di stream editor, editor di flusso) è un comando dei sistemi operativi Unix e Unix-like, e più in generale dei sistemi POSIX, che consente il filtraggio e la manipolazione di testi. Il comando viene tipicamente utilizzato in pipe in ambiente shell o specificando un file di input da riga di comando. Pur essendo principalmente utilizzato per applicare delle espressioni regolari, il linguaggio interpretato da sed è turing completo, anche se, essendo pensato per la manipolazione del testo, un suo utilizzo per altri scopi è considerato esoterico.

Sintassi[modifica | modifica wikitesto]

sed [OPZIONI]... {file regole filtraggio} [file di input]..

Le opzioni riguardano la modalità di filtraggio e le operazioni (come ad esempio sostituzione del testo) da effettuare. Opzioni che possono essere elencate in un file da passare in input al programma per poterlo perfezionare o riutilizzare. Il file di input, opzionale, contiene il testo su cui saranno applicati i filtri

Esempi di utilizzo[modifica | modifica wikitesto]

Generazione di un file di test:

$ cat << eof > test.txt
> 1:2:3:4:5
> eof

Esempio con file di input:

$ sed s/:/-/g test.txt
1-2-3-4-5

Esempi (equivalenti) con pipe:

$ cat test.txt | sed s/:/-/g
1-2-3-4-5

$ echo 1:2:3:4:5 | sed s/:/-/g
1-2-3-4-5

Collegamenti esterni[modifica | modifica wikitesto]

Controllo di autoritàGND (DE4262086-7
  Portale Informatica: accedi alle voci di Wikipedia che trattano di informatica