A `-e' opció az egyszerű szerkesztést jelenti: a szerkesztő parancsot a következő argumentumból veszi. Amennyiben több `-e' is van a parancssorban, megjelenésük sorrendjében hajtja őket végre. Amennyiben csak egyetlen `-e' opció van és nincs `-f', a `-e' elhagyható.
A `-f' opció azt eredményezi, hogy a parancsokat az "sfile" fájlból veszi. Amennyiben több is van belőlük, megjelenésük sorrendjében kerülnek végrehajtásra. A `-e' és `-f' opciók keverhetők.
A `-g' opció azt eredményezi, mintha minden helyettesítési parancsnak `g' végződése lenne.
A `-n' opció elnyomja az alapértelmezett kimenetet.
A szkript soronként egy parancsot tartalmaz az alábbi forma szerint:
[cím [, cím] ] függvény [argumentumok]
Általában a sed ciklikusan bemásol az aktuális szövegpufferbe egy sort a bemenetről, azután sorra alkalmazza azokat a parancsokat, amelyek a cím(ek) alapján a sorra vonatkoznak, végül a puffert a standard kimenetre másolja és törli.
A `-n' opció elnyomja a normális kimenetet, így csak a `p' és `w' parancsok kimenete készül el.
Néhány parancs (n, N) saját sorolvasást végez, és néhány másik (d, D) a szkript minden további utasítását átugorja. (A `D' parancs elnyomja a szövegpuffer törlését, amely normálisan bekövetkezne a következő ciklus előtt.)
Azt is hasznos tudni, hogy létezik egy második puffer (`hold space'), amelyik másolható, hozzáfűzhető vagy felcserélhető az aktuális szövegpufferrel.
A címzés egy decimális számjegy, `$'-jel, vagy tartalmi címzés lehet. A decimális jegy a legelső beolvasott sor esetén 1, és folyamatosan egyesével növekszik az összes bemeneti fájl sorain keresztül. A `$'-jel az utolsó bemeneti sort jelenti.
A tartalmi címzés egy `/szabályos kifejezés/' az ed (1) stílusában, a következő különbségekkel:
A `!' negáló operátor azt eredményezi, hogy a parancs azokra a sorokra vonatkozik, amelyeket a címzés nem választott ki.
A függvények következő listájában zárójelben megadjuk a függvény által megengedett címzések maximális számát. .P A "szöveg"-gel jelölt argumentumok egy vagy több sorból állhatnak, melyek közül az utolsó kivételével mind `\'-re kell végződjön. (A `\' jel elrejti a sorvégjelet.)
A szövegbeli backslash (fordított törtvonal) jeleket a program úgy kezeli, mint az `s' parancs helyettesítési stringjében levőket, és ezek a backslash jelek használhatók a kezdeti szóközök és tabulátorok (whitespace karakterek) megvédésére. Alapértelmezés szerint ugyanis ezeket a bevezető jeleket figyelmen kívül hagyja a sed.
Az "rfile" és "wfile" jelölésű argumentumok a parancssor legvégén kell álljanak. A sed minden "wfile"-t létrehoz a feldolgozás megkezdése előtt. Legfeljebb 10 "wfile" argumentum lehet.
A következőkben ismertetjük a sed által ismert függvényeket.
\b -- backspace (ASCII 08) \t -- tab (ASCII 09) \n -- newline (ASCII 10) \r -- return (ASCII 13) \ -- escape (ASCII 27) \xx -- a kétjegyű xx hexadecimális számmal megadható ASCII karakter.
A szabályos kifejezés előfordulásait helyettesíti az aktuális szövegpufferben. A `/' kivételével minden karakter használható. Teljesebb leírást lásd az ed (1) kézikönyv lapján. A zászlók a következők lehetnek: (Bármelyikük előfordulhat, de az is lehet, hogy egyikük sem.)
g -- Globális. A string minden nem átfedő megjelenését helyettesíti. Ha nincs megadva, csak az első megjelenés helyettesítődik.
p -- Kinyomtatja (print) a minta területet ha helyettesítés történt.
w -- Írás (write). Az aktuális szövegpuffert egy argumentumként megadott fájlhoz fűzi hozzá, ahogy a `w' parancsban, ha helyettesítés történik. Ha nincs fájl argumentum, a standard kimenetre történik az írás.
Az üres parancsot figyelmen kívül hagyja.
Egy dokumentálatlan tulajdonság (az első megjegyzést bevezető `n' azonos hatását a `-n parancssor-opció'-val) nem került implementálásra.
A BSD sed-hez képest javítások is történtek, melyeket itt terjedelmi okokból nem tárgyalunk.
Ez a program egy `freeware' komponense a GNU és MINIX operációs rendszereknek. A felhasználó itt megkapja a jogokat a program használatára, módosítására és terjesztésére a következő feltételek mellett:
1. A szerzőségre vonatkozó megjegyzést minden forrásfájlban változatlanul meg kell hagyni.
2. A lefordított változat forráskód nélkül nem terjeszthető.
ed(1), grep(1), awk(1), lex(1), regexp(5)