Sed alapvető parancsok
A sed
(stream editor) egy rendkívül hasznos parancssori eszköz, amelyet szövegek módosítására és feldolgozására használnak Unix-alapú rendszerekben. Az alábbiakban bemutatok egy alapvető tutorialt a sed
használatáról.
1. Alapvető szintaxis
A sed
parancs alapvető szintaxisa a következő:
sed [opciók] 'parancs' fájl
2. Leggyakoribb parancsok
2.1. Szöveg keresése és helyettesítése
A leggyakoribb felhasználás a szöveg keresése és helyettesítése. A következő példa megmutatja, hogyan lehet egy szót egy másikra cserélni:
sed 's/keresett_szó/helyettesítő_szó/g' fájl.txt
s
: a "substitute" (helyettesítés) parancs.g
: globális helyettesítést jelent, azaz az összes előfordulást kicseréli a sorban.
2.2. Sorok törlése
Sorok törlésére is használható a sed
. Például, ha el szeretnénk távolítani az 5. sort:
sed '5d' fájl.txt
d
: a "delete" (törlés) parancs.
Ha pl. minden ötödik sort szeretnéd törölni egy fájlból, akkor a következő parancsot használhatod:
sed '5~5d' fájl.txt
5~5
: Ez a kifejezés azt jelenti, hogy az 5. sortól kezdve minden ötödik sort kiválasztunk. Az~
operátor a lépésközöket jelöli.d
: Ez a parancs törli a kiválasztott sorokat.
2.3. Sorok hozzáadása
Új sorok hozzáadásához a a
(append) parancsot használhatjuk. Például, ha a 3. sor után szeretnénk hozzáadni egy új sort:
sed '3a Új sor szövege' fájl.txt
2.4. Sorok módosítása
A c
(change) parancs segítségével egy meglévő sort módosíthatunk. Például, ha a 2. sort szeretnénk módosítani:
sed '2c Módosított sor szövege' fájl.txt
3. Fájlok mentése
A sed
alapértelmezés szerint nem módosítja a fájlt, csak a kimenetet írja ki a terminálra. Ha szeretnénk a módosításokat menteni, használhatjuk a -i
(in-place) opciót:
sed -i 's/keresett_szó/helyettesítő_szó/g' fájl.txt
4. Összegzés
A sed
egy rendkívül erőteljes eszköz, amely lehetővé teszi a szövegek gyors és hatékony módosítását. A fenti példák csak a jéghegy csúcsát jelentik; a sed
sok más funkcióval is rendelkezik, mint például a reguláris kifejezések használata, szövegformázás, és még sok más. Érdemes alaposan megismerkedni vele, ha gyakran dolgozol szöveges fájlokkal a parancssorban.