Movatterモバイル変換


[0]ホーム

URL:


Ugrás a tartalomhoz
Wikipédia
Keresés

sed

Ellenőrzött
A Wikipédiából, a szabad enciklopédiából

Változat állapota

Ez a lap egy ellenőrzött változata

Ez aközzétett változat,ellenőrizve:2024. november 6.

Pontosságellenőrzött

Ased(stream editor) egy nem interaktív szövegszerkesztő program aUnix operációs rendszerben. A szövegszerkesztő parancsokat parancssorból vagy -fájlból veszi. Használhatjuk helyettesítésre, törlésre vagy transzformációra. Néhány kivételtől eltekintve egyszerre egy sorral dolgozik. Az állomány sorait rendre olvassa be a mintatérbe, és hajtja végre rajta a scriptben szereplő parancsokat. Ha a scriptben szereplő összes parancs feldolgozta a mintatérben levő sort, akkor a mintatér tartalma kikerül a standard outputra (a -n opcióval ezt a default kiírást letilthatjuk).

1973 és 1974 között fejlesztette kiLee E. McMahon mintUnix alkalmazást, de napjainkban is minden operációs rendszerben elérhető.

Használata

[szerkesztés]

sedkapcsolókfile...

Az eredmény a standard outputra kerül (tehát több fájl esetén is egy eredményfájl van).[1] A kimenetet rendszerint fájlba irányítjuk vagy pipeline-nal (|) tovább alakítjuk.

(Ha sem a-e, sem a-f kapcsoló nincs megadva, a sed az első paramétert tekinti az egyetlen szerkesztő utasításnak, a többit fájlnak.)

Főbb kapcsolók

[szerkesztés]
  • -e: szerkesztőparancs. Több-e paraméter lehet a parancssorban.
  • -f: parancsfájl. A sed ebből olvassa a szerkesztő parancsokat.
  • -n: a mintatér nem íródik ki a parancsok feldolgozása után; lásdp parancs.

Főbb parancsok

[szerkesztés]

Minden parancs egybetűs. A betűt megelőzheti a sor(ok) megadása, amely(ek)re azt végre kell hajtani. Ha elmarad, minden sorra végrehajtódik az utasítás. A parancs betűjét követheti(k) a parancs paramétere(i).

A sorok egy vagy két paraméterrel adhatók meg. Az utóbbi sortartományt jelent kezdő- és végsor alakban.

A sorparaméter megadható sorszámmal vagy két/ közé zárt reguláris kifejezéssel.[2] A sortartomány két tagja különböző módon is leírható, második sorparaméter pedig lehet az elsőhöz relatív+N ill.-N alakban.

A betű előtti! megfordítja a sorkijelölést: ezekrenem hajtódik végre az utasítás.

A fontosabb egybetűs parancsok és paramétereik:

  • s/mit/mire/hányadik
    Helyettesítés.mit reguláris kifejezés.mire-ben a&-jellel hivatkozhatunk amit-hez illeszkedő mintára.[3] Az utolsó paraméter azt mondja meg, hányadik talált mintában kell a helyettesítést végrehajtani. Ag érték minden illeszkedésre végrehajtja a helyettesítést a sorban.
  • d
    Törli a sort a mintatérből.
  • p
    Kiírja a mintatér aktuális tartalmát a standard outputra.

Példák

[szerkesztés]

A következő példa a sed egy általános használata:

echo "`sed 's/ui./ugyanis/g' inputFileName`" > outputFileName

Azs arra utal, hogy most a programot behelyettesítésre használjuk, ag miatt pedig a mintát az összes előfordulásában helyettesíti az új mintával. Az első helyen mindig az a minta található, amit keresek és amit helyettesíteni akarok, a második helyen pedig az új minta, mellyel helyettesítem a régi mintát.

A Unix, sed -et gyakran használják szűrőként a csővezetékkel, apipeline együtt:

generate_data | sed -e 's/x/y/g'

A felső példában generáljuk a data állományt, majd a sed segítségével azx összes előfordulását helyettesítjüky-nal.Az e opciót akkor használjuk, ha a sed parancssorban több végrehajtandó scriptet adunk meg. Egyetlen script esetén elhagyható.

Példa a d utasítás használatára:

sed '/^$/d' file

A példában a sed törli az üres sorokat a file nevű állományból.

Az alábbi példában törlődnek az üres sorok és azok, melyek csak szóközt tartalmaznak:

sed -e '/^ *$/d' inputFileName

Az előbbi példák olyan karaktereket használtak, melyek különbözőreguláris kifejezések:

  • Akalap (^) a sor kezdetét jelöli.
  • Adollárjel ($) a sor végét jelöli.
  • Acsillag (*) jelöl egy nulla vagy több karaktert.

Története

[szerkesztés]

A sed az első Unix parancsok közé tartozik, mely segítségével állományok sorait dolgozzuk fel. Továbbfejlesztés során jött létre agrep parancs.A sed és az AWK járult hozzá aPerl kifejlesztéséhez.

Jegyzetek

[szerkesztés]
  1. Létezik fájlba író parancs, mellyel nemcsak a standard output lehet az eredmény helye.
  2. A/-t más karakter is helyettesítheti\c ...c alakban, aholca/-t helyettesítő karakter.
  3. Amit egyes részeire is lehet hivatkozni. A reguláris részkifejezéseket\( és\) közé zárjuk, ígymire-ben\1,\2 stb. alakban hivatkozhatunk rá.
Unixparancssoros programok és utasítások
Fájlrendszer
Processzek
Felhasználói környezet
Szövegkezelés
Shell programozás
Hálózat
Keresés
Dokumentáció
Egyéb
A lap eredeti címe: „https://hu.wikipedia.org/w/index.php?title=Sed&oldid=27580727
Kategória:

[8]ページ先頭

©2009-2025 Movatter.jp