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ő:

  1. Beszúrás
  2. Törlés
  3. Csere (Keresse meg és cserélje le)
instagram viewer

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 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.

Email
7 módszer a parancssori súgó beszerzésére Linuxon

A Linux parancsok parancssorból történő megismeréséhez szükséges összes parancs

Olvassa el a következőt

Kapcsolódó témák
  • Linux
  • Szöveg szerkesztő
  • Terminál
  • Parancssor
A szerzőről
Deepesh Sharma (36 cikk megjelent)

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.

Tovább a Deepesh Sharma-tól

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.

.