A Sed használata Linuxban

Sed a stream editor rövidítése. Ez egy parancssori alapú szerkesztő Linuxhoz. A sed népszerű használata a fájl(ok) szerkesztése egy automatizálási szkript részeként Linux alatt, mivel a szerkesztők általában aktív felhasználói bevitelt igényelnek, és nem szerkeszthetik a fájlokat a szerkesztő képernyőkön kívül. A Sed leggyakrabban a parancssorból történő kereséshez és cseréhez használatos.

Ez a típusú szövegszerkesztő besorolható a nem interaktív szövegszerkesztők közé is.

Lássunk néhány általános lehetőséget a fájlok Sed használatával történő szerkesztésére. Példaként a következő fájlt vesszük:

$: macska teszt.txt Gyors barna kutya ugrott át a lusta macskán. Linux operációs rendszer. A hozzám közeli erdőben van egy macska és egy farkas is. 

Keresés és csere

Karakterlánc kereséséhez egy fájlban, és lecseréléséhez egy másik karakterláncra, futtassa:

sed -i "s/cat/fox/g" test.txt

Itt, a -én flag arra utasítja a sed-et, hogy írja be a változtatásokat a fájlba. E zászló nélkül, sed csak megjeleníti a fájlt a módosított karakterlánccal.

Az idézetekben megvan s/macska/róka/g. A s a keresés és csere parancsra szolgál sed. Ezután megvan a keresendő karakterlánc, ami az macska. Ezután a karakterláncot, amellyel helyettesíteni kell, azaz róka. Végül megvan a választható lehetőség g, amely utasítja sed hogy lecserélje az összes előfordulást a fájl minden sorában. Anélkül, hogy a g, sed csak az első előfordulását fogja helyettesíteni macska minden vonalon.

Itt is használható a Regex.

sed -i "s/f[a-z]*\./cat\./g"

Beszúrás

Ha szöveget szeretne beszúrni egy egyező karakterláncot tartalmazó sor elé, használja:

sed -i "/cat/i Start:" test.txt

Itt, macska a keresett karakterlánc és Rajt: az a karakterlánc, amelyet be kell írni azon sor elé, ahol a keresett karakterlánc található.

Hasonlóképpen, ha szöveget szeretne beszúrni egy sor után, használja:

sed -i "/fox/a End." teszt.txt

Töröl

Egy részkarakterláncot tartalmazó sor törléséhez használja:

sed -i "/Linux/d" test.txt

Sorszámú sor törléséhez, pl. az első sort használja:

sed -i '1d' test.txt

Több funkció kombinálása

Több funkció kombinálásához, pl. keresés és csere, törlés, egyetlen parancsban, -e zászló használható.

sed -i -e "s/fox/cat/g" -e '2d' test.txt

? Egészségére!