Uvod u naredbu Linux sed
Linux operativni sustav koristi terminalne naredbe za rad s računalnim datotečnim sustavom. Primarna upotreba Linux naredbe sed , koja je kratica za uređivač streamova, jest izmijeniti svaku liniju datoteke ili struje zamjenom određenih dijelova retka. To čini osnovne promjene teksta u datoteku ili ulaz iz cjevovoda. Na primjer, recimo da imate datoteku pod nazivom "songs.text" koja sadrži sljedeće retke:
1, Justin Timberlake, naslov 545, cijena 6,30 dolara 2, Taylor Swift, naslov 723, cijena 7,90 dolara 3, Mick Jagger, naslov 610, cijena 7,90 dolara 4, Lady Gaga, naslov 118, cijena 6,30 dolara 5, Johnny Cash, naslov 482, cijena 6,50 kn 6, Elvis Presley, naslov 335, cijena 6,30 dolara 7, John Lennon, naslov 271, cijena 7,90 dolaraIzrada tekstnih zamjena sa sed
Ako želite promijeniti sve pojavljivanja cijena od $ 6.30 do $ 7.30, možete izvršiti promjene pomoću naredbe sed na ovaj način:
sed / 6.30 / 7.30 / 'songs.txt> songs2.txtOvaj kôd izvršava promjenu i piše modificiranu datoteku u "songs2.txt". Izlazna datoteka sadrži:
1, Justin Timberlake, naslov 545, cijena 7,30 dolara 2, Taylor Swift, naslov 723, cijena 7,90 dolara 3, Mick Jagger, naslov 610, cijena 7,90 dolara 4, Lady Gaga, naslov 118, cijena 7,30 dolara 5, Johnny Cash, naslov 482, cijena 6,50 kn 6, Elvis Presley, naslov 335, cijena 7,30 dolara 7, John Lennon, naslov 271, cijena 7,90 dolaraAko želite sve događaje "Gotovina" zamijeniti sa "Trash", upotrebljavate:
sed / Cash / Trash / "songs.txt" songs2.txtkoji stvara datoteku s sadržajem:
1, Justin Timberlake, naslov 545, cijena 7,00 dolara 2, Taylor Swift, naslov 723, cijena 7,90 dolara 3, Mick Jagger, naslov 610, cijena 7,90 dolara 4, Lady Gaga, naslov 118, cijena 7,30 dolara 5, Johnny Trash, naslov 482, cijena 6,50 dolara 6, Elvis Presley, naslov 335, cijena 7,00 dolara 7, John Lennon, naslov 271, cijena 7,90 dolaraFiltriranje pomoću naredbe Sed
Sed se često koristi za filtriranje linija u datoteci ili streamu. Na primjer, ako samo želite vidjeti retke koje sadrže "John", koristite:
sed-n '/ John / p' songs.txt> johns.txtkoji piše sljedeće retke u datoteku johns.txt:
5, Johnny Trash, naslov 482, cijena 6,50 dolara 7, John Lennon, naslov 271, cijena 7,90 dolara