A szöveges fájlok és a terminál kimenetének szerkesztése mindennapi feladat azok számára, akik Linux gépeket adminisztrálnak. A parancssori segédprogramok, mint például a sed, lehetővé teszik a felhasználó számára, hogy közvetlenül a terminál ablakából módosítsa és módosítsa a szöveges fájl tartalmát.
Ebben a cikkben részletesen tárgyaljuk a sed parancsot, néhány alapvető példával együtt, amelyek bemutatják a sed segédprogram hatékonyságát a Linuxban.
Mi a sed parancs?
A sed parancs, amely a rövidítése Patakszerkesztő, egy parancssori eszköz, amely lehetővé teszi a Linux felhasználók számára, hogy szöveges műveleteket hajtsanak végre a fájlokon és a terminál kimenetein. A sed használatával a felhasználók megtalálhatják és kicserélhetik a szöveg egyes szavait, megjeleníthetik a kimenet bizonyos szakaszait, és anélkül, hogy megnyitnák azokat, szerkeszthetik a szöveges fájlokat.
A sed parancs által támogatott három alapvető művelet a következő:
- Beszúrás
- Törlés
- Csere (Keresse meg és cserélje le)
A haladó felhasználók a sed paranccsal rendszeres kifejezéseket is megvalósíthatnak a szövegfolyamok hatékonyabb szerkesztése érdekében.
A parancs alapvető szintaxisa:
sed [opciók] [minta] [filepath]
...hol opciók a parancs különféle funkciói, minta az a szabályos kifejezés vagy a szkript, amelyet illeszteni szeretne, és fájl elérési út a szöveget tartalmazó szövegfájl elérési útja.
10 Példa a Linux sed parancsra
Ha rendes Linux-felhasználóvá kíván válni, hasznos lehet Önnek a fájlok szerkesztésének, egyes szavak keresésének és cseréjének, valamint a terminál kimenetének szűrésének ismerete. Ez a szakasz néhány példát mutat be a sed parancsra, amely mindenképpen Linux energiafelhasználóvá vált.
A bejegyzésben a következő szövegfájlt fogjuk bemutatni.
Ez egy bemutató szöveges fájl.
Ez egy csodálatos fájl, amely mindannyiunk számára segítséget nyújt.
A sed parancs patak szerkesztésére is kiváló.
Meg akarja tanulni a parancs használatát?
Ez egy másik sor a fájlban.
Ez a fájl harmadik általános sora.
Ezt a fájlt textfájlnak nevezik.
Ez egy alma.
Ez egy narancs.
1. Sorok sorának megtekintése
A Linux parancsok, például a fej és a farok, egy szövegfájl első vagy utolsó tíz sorát adják ki. De mi van akkor, ha a tartalmat egy fájl két konkrét sora közé akarja kapni? Ilyen helyzetekben a sed parancs jól jöhet.
A fájl 3. és 5. sora közötti tartalom kimenetéhez textfile.txt:
sed -n '3,5p' textfile.txt
A -n A flag megakadályozza, hogy a sed minden egyes ciklus végén megjelenítse a mintateret. Használhatja a --csendes és --csendes opciók helyett -n. A o érv áll nyomtatás és az illesztett vonalak megjelenítésére szolgál a felhasználó számára.
A fent említett parancs végrehajtása a példafájlon a következő kimenetet eredményezi.
A sed parancs patak szerkesztésére is kiváló.
Meg akarja tanulni a parancs használatát?
Ez egy másik sor a fájlban.
A megadott tartomány kivételével a teljes fájltartalom kimenetéhez használja a d zászló helyett o a parancsban:
sed '3,5d' textfile.txt
A d flag törli az egyező karakterláncokat a kimenetből, és megjeleníti a többi tartalmat.
Ez egy bemutató szöveges fájl.
Ez egy csodálatos fájl, amely mindannyiunk számára segítséget nyújt.
Ez a fájl harmadik általános sora.
Ezt a fájlt textfájlnak nevezik.
Ez egy alma.
Ez egy narancs.
2. Nem egymást követő sorok megjelenítése
Nem egymást követő sorok nyomtatása a fájl több tartománya között:
sed -n -e '1,2p' -e '5,6p' textfile.txt
Kimenet:
Ez egy bemutató szöveges fájl.
Ez egy csodálatos fájl, amely mindannyiunk számára segítséget nyújt.
Ez egy másik sor a fájlban.
Ez a fájl harmadik általános sora.
A -e zászló segít végrehajtó több művelet egyetlen parancs segítségével.
3. Helyezzen szóközt a vonalak közé
Ha valamilyen okból üres sorokat szeretne beszúrni egy szövegfájl minden sora közé, használja a G argumentum az alapértelmezett sed paranccsal.
sed G textfile.txt
Ha több üres sort szeretne beilleszteni a kimenetbe, akkor adjon meg többet G argumentumokkal elválasztva pontosvessző (;) karakter.
sed 'G; G 'textfile.txt
4. Szó cseréje egy szövegfájlba
Ha egy adott szó minden előfordulását valamilyen más szóval kívánja helyettesíteni, használja a s és g argumentumokat a paranccsal. A szavaknak a sed paranccsal történő helyettesítésének alapvető szintaxisa:
sed s / originalword / helyettesítő / g fájlnév
A fent említett szintaxissal helyettesítheti a szót elképesztő val vel szuper az aktában textfile.txt:
sed s / csodálatos / szuper / g textfile.txt
A s érv jelöli helyettesítés és a g paranccsal helyettesítik az egyező tartalmat a megadott tartalommal.
A szó második előfordulásának sed helyettesítésére adjon át egy számot a g érv. Ebben az esetben:
sed s / amazing / super / g2 textfile.txt
Ha figyelmen kívül akarja hagyni a karakteres eseteket szavak cseréje közben, használja a GI ahelyett g, hol én áll figyelmen kívül hagyni ügy.
sed s / Elképesztő / szuper / gi textfile.txt
Összefüggő: Vi használatával? Így nyithat meg egy fájlt, majd mentse és lépjen ki
5. Helyettesítsen szavakat egy tartományon belül
A szavakat egy adott tartományon belül is helyettesítheti.
sed '2,5s / amazing / super / g' textfile.txt
6. Végezzen egyszerre több helyettesítést
Ha egyszerre két vagy több helyettesítést szeretne végrehajtani, egyszerűen válassza el a parancsokat a pontosvessző (;) karakter.
sed 's / csodálatos / szuper / g; s / parancs / segédprogram / gi 'textfile.txt
A rendszer a következő kimenetet jeleníti meg.
Ez egy bemutató szöveges fájl.
Ez egy szuper fájl, amely mindannyiunk számára segítséget nyújt.
A sed segédprogram patakok szerkesztésére is kiváló.
Meg szeretné tanulni a segédprogram használatát?
Ez egy másik sor a fájlban.
Ez a fájl harmadik általános sora.
Ezt a fájlt textfájlnak nevezik.
Ez egy alma.
Ez egy narancs.
7. Csak akkor cserélje ki a szavakat, ha talál egyezést
A sed paranccsal is helyettesíthet egy szót, ha egy adott találat található a sorban. Például a szó helyettesítésére a val vel an ha a szó narancs jelen van a sorban:
sed -e '/ orange / s / a / an / g' textfile.txt
A fent említett parancs kiadása a következőket adja ki:
Ez egy bemutató szöveges fájl.
Ez egy szuper fájl, amely mindannyiunk számára segítséget nyújt.
A sed segédprogram patakok szerkesztésére is kiváló.
Meg szeretné tanulni a segédprogram használatát?
Ez egy másik sor a fájlban.
Ez a fájl harmadik általános sora.
Ezt a fájlt textfájlnak nevezik.
Ez egy alma.
Ez egy narancs.
Vegye figyelembe, hogy a szó a a sorban Ez egy alma nem cserélték le, mivel a rendszer nem találta a szót narancs benne.
8. Helyettesítse a szavakat a reguláris kifejezések használatával
Azok számára, akik tudják használni a reguláris kifejezéseket, sokkal könnyebbé válik a műveletek végrehajtása a karakterláncokon a sed paranccsal. A parancs hatékonyságának növelése érdekében rendszeres kifejezéseket is megvalósíthat.
A szó minden előfordulásának helyettesítésére Elképesztő vagy elképesztő val vel szuper:
sed -e 's / [Aa] mazing / super / g' textfile.txt
Hasonlóképpen speciális szabályos kifejezéseket is használhat konkrét műveletek végrehajtására a sed paranccsal.
9. Cső sed más parancsokkal
Láncolhatja a sedet más Linux parancsokkal is. Például csövezheti a lspci parancs sed használatával üres terek hozzáadásához a sorok között a kimenetben.
lspci | sed G
Speciális szavak helyettesítése a ip útvonal-show parancs:
ip útvonal megjelenítése | sed s / src / forrás / g
A fent említett parancs helyettesíti a szót forrás az eredeti szó helyén src.
Összefüggő: Hogyan lehet használni a Keresés parancsot fájlok kereséséhez Linux alatt
10. Az eredeti fájl szerkesztése és biztonsági mentése
Amikor rendszerfájlokkal dolgozik, fontos az eredeti fájl biztonsági másolata a módosítások során. Ez segít visszavonni a változásokat abban az esetben, ha valami megszakad.
Az eredeti fájl biztonsági másolatának készítéséhez sed használatával használja a -én zászló a parancsban.
sed -i'.backup '' s / amazing / super / g 'textfile.txt
Új fájl jön létre a névvel textfile.txt.backup. A. Segítségével ellenőrizheti, hogy a két fájl különbözik-e egymástól diff parancs.
diff textfile.txt textfile.txt.backup
Karaktersorozatok szerkesztése Linuxban sed
Néha, amíg a terminálon szövegfájlokkal dolgozol, a kimenet formázása és szerkesztése a jobb olvashatóság érdekében elengedhetetlenné válik. A Sed és az awk parancssori segédprogramok a Linuxban, amelyek lehetővé teszik a felhasználó számára, hogy az adatokat külön sorokra osztva hatékonyan dolgozzon a szöveges fájlokkal.
Sok felhasználó nehezen megjegyzi a sed parancs argumentumait és zászlajait, mivel sok közülük használható. Annak ismerete, hogy miként szerezzen be parancssori kézikönyveket bármely Linux parancshoz, segít abban, hogy könnyebben kijusson az ilyen helyzetekből.
A Linux parancsok parancssorból történő megismeréséhez szükséges összes parancs
Olvassa el a következőt
- Linux
- Szöveg szerkesztő
- Terminál
- Parancssor
Deepesh a MUO Linux-szerkesztője. Több mint 3 éve ír információs tartalmat az interneten. Szabadidejében szívesen ír, zenét hallgat és gitározik.
Iratkozzon fel hírlevelünkre
Csatlakozzon hírlevelünkhöz, amely műszaki tippeket, véleményeket, ingyenes e-könyveket és exkluzív ajánlatokat tartalmaz!
Még egy lépés…!
Kérjük, erősítse meg e-mail címét az imént elküldött e-mailben.