Skip to main content

Příklady toho, jak se používá příkaz Linux Sed

NYSTV The Forbidden Scriptures of the Apocryphal and Dead Sea Scrolls Dr Stephen Pidgeon Multi-lang (Červen 2025)

NYSTV The Forbidden Scriptures of the Apocryphal and Dead Sea Scrolls Dr Stephen Pidgeon Multi-lang (Červen 2025)
Anonim

Operační systém Linux používá terminálové příkazy pro práci s počítačovým systémem souborů. Primární použití příkazu Linux sed, což je zkratka pro stream editor, je modifikovat každý řádek souboru nebo stream nahrazením specifikovaných částí řádku. Změní základní textové změny na soubor nebo vstup z potrubí. Řekněme například, že máte soubor s názvem "songs.text", který obsahuje tyto řádky:

1, Justin Timberlake, titul 545, cena 6,30 dolarů2, Taylor Swift, titul 723, cena 7,90 dolarů3, Mick Jagger, Název 610, Cena $ 7.904, Lady Gaga, titul 118, cena 6,30 dolarů5, Johnny Cash, titul 482, cena 6,50 dolarů6, Elvis Presley, titul 335, cena 6,30 dolarů7, John Lennon, titul 271, cena 7,90 dolarů

Vytváření textových náhrad pomocí Sed

Pokud chcete změnit všechny výskyty cen ve výši 6,30 až 7,30 dolarů, můžete tyto změny provést příkazem sed tímto způsobem:

sed 's / 6.30 / 7.30 /' songs.txt> songs2.txt

Tento kód provede změnu a zapíše upravený soubor na "songs2.txt". Výstupní soubor obsahuje:

1, Justin Timberlake, titul 545, cena 7,30 dolarů2, Taylor Swift, titul 723, cena 7,90 dolarů3, Mick Jagger, Název 610, Cena $ 7.904, Lady Gaga, titul 118, cena 7,30 dolarů5, Johnny Cash, titul 482, cena 6,50 dolarů6, Elvis Presley, titul 335, cena 7,30 dolarů7, John Lennon, titul 271, cena 7,90 dolarů

Pokud chcete nahradit všechny výskyty "Hotovosti" pomocí "Koše", použijete:

Sed 's / Cash / Trash /' songs.txt> songs2.txt

který vytvoří soubor s obsahem:

1, Justin Timberlake, titul 545, cena 7 dolarů: 302, Taylor Swift, titul 723, cena 7,90 dolarů3, Mick Jagger, Název 610, Cena $ 7.904, Lady Gaga, titul 118, cena $ 7: 305, Johnny Trash, titul 482, cena 6,50 dolarů6, Elvis Presley, Název 335, Cena 7 dolarů: 307, John Lennon, titul 271, cena 7,90 dolarů

Filtrování pomocí příkazu Sed

Sed se také často používá k filtrování řádků v souboru nebo streamu. Pokud například chcete vidět pouze řádky obsahující "John", použijete:

sed -n '/ John / p' songs.txt> johns.txt

který zapíše následující řádky do souboru johns.txt:

5, Johnny Trash, titul 482, cena 6,50 dolarů7, John Lennon, titul 271, cena 7,90 dolarů