sed

Tartalom

 

Adatok

Licenc:
Verziószám: 4.7 (Debian 10-ben)
Fejlesztő/tulajdonos: Free Software Foundation Inc.

Rövid leírás:

A sed linux parancs manual oldala és súgója. A sed parancs a megadott fájlokat a megadott célfájlba másolja, miközben egy parancsokat tartalmazó szkriptnek megfelelően megszerkeszti. Ha nem kerülnek fájlok megadásra, akkor a szabványos bemenetről olvas, és a szabványos kimenetre adja a kimenetét.

 

 

Man oldal kimenet

man sed
sed(1)                                                General Commands Manual                                                sed(1)

NÉV
       sed - folyamszerkesztő (stream editor)

ÁTTEKINTÉS
       sed [-n] [-g] [-e script ] [-f sfile ] [ file ] ...

LEÍRÁS
       A  `sed'  program  a  megnevezett  fájlokat (alapértelmezés szerint a standard bemenetet) a szabványos kimenetre másolja, de
       közben egy parancsokat tartalmazó szkriptnek megfelelően megszerkeszti.

       A `-e' opció az egyszerű szerkesztést jelenti: a szerkesztő parancsot a következő argumentumból veszi. Amennyiben több  `-e'
       is  van a parancssorban, megjelenésük sorrendjében hajtja őket végre. Amennyiben csak egyetlen `-e' opció van és nincs `-f',
       a `-e' elhagyható.

       A `-f' opció azt eredményezi, hogy a parancsokat az "sfile" fájlból veszi.  Amennyiben több  is  van  belőlük,  megjelenésük
       sorrendjében kerülnek végrehajtásra. A `-e' és `-f' opciók keverhetők.

       A `-g' opció azt eredményezi, mintha minden helyettesítési parancsnak `g' végződése lenne.

       A `-n' opció elnyomja az alapértelmezett kimenetet.

       A szkript soronként egy parancsot tartalmaz az alábbi forma szerint:

               [cím [, cím] ] függvény [argumentumok]

       Általában  a  sed  ciklikusan  bemásol  az  aktuális  szövegpufferbe egy sort a bemenetről, azután sorra alkalmazza azokat a
       parancsokat, amelyek a cím(ek) alapján a sorra vonatkoznak, végül a puffert a szabványos kimenetre másolja és törli.

       A `-n' opció elnyomja a normális kimenetet, így csak a `p' és `w' parancsok kimenete készül el.

       Néhány parancs (n, N) saját sorolvasást végez, és néhány másik (d, D) a szkript minden további utasítását átugorja.  (A  `D'
       parancs elnyomja a szövegpuffer törlését, amely normálisan bekövetkezne a következő ciklus előtt.)

       Azt  is hasznos tudni, hogy létezik egy második puffer (`hold space'), amelyik másolható, hozzáfűzhető vagy felcserélhető az
       aktuális szövegpufferrel.

       A címzés egy decimális számjegy, `$'-jel, vagy tartalmi címzés lehet. A decimális jegy a legelső beolvasott sor esetén 1, és
       folyamatosan egyesével növekszik az összes bemeneti fájl sorain keresztül. A `$'-jel az utolsó bemeneti sort jelenti.

       A tartalmi címzés egy `/szabályos kifejezés/' az ed (1) stílusában, a következő különbségekkel:

       (1)  A `0 jelsorozat egy pufferbe ágyazott újsor-jellel egyezik meg, `' pedig egy tab-bal.

       (2)  Címek nélküli parancssor minden puffert kiválaszt.

       (3)  Egy címzéssel rendelkező parancssor minden olyan puffert kiválaszt, amely megfelel a címzésnek.

       (4)  Két  címzéssel rendelkező parancssor egy tartományt választ ki, melybe beleértendők a megadott határok is.  A tartomány
            annál az első bemeneti puffernél kezdődik, amely megfelel az első címzésnek, és annál végződik,  amely  ezután  először
            felel  meg a másodiknak.  Amennyiben a második címzés egy szám, amely kisebb vagy egyenlő, mint az elsőnek kiválasztott
            sor száma, csak egy sor kerül kiválasztásra.  Mihelyt a második cím is megegyezést mutat, a sed  program  újrakezdi  az
            első  címzéssel  való  egyezés  keresését;  így  tetszőleges  számú,  a  címzésnek megfelelő tartomány egyezést mutat a
            címzéssel.

       A `!' negáló operátor azt eredményezi, hogy a parancs azokra a sorokra vonatkozik, amelyeket a címzés nem választott ki.

       A függvények következő listájában zárójelben megadjuk a függvény által megengedett címzések maximális számát.

       A "szöveg"-gel jelölt argumentumok egy vagy több sorból állhatnak, melyek közül  az  utolsó  kivételével  mind  `\'-re  kell
       végződjön. (A `\' jel elrejti a sorvégjelet.)

       A  szövegbeli  backslash  (fordított törtvonal) jeleket a program úgy kezeli, mint az `s' parancs helyettesítési stringjében
       levőket, és ezek a backslash jelek használhatók a kezdeti  szóközök  és  tabulátorok  (whitespace  karakterek)  megvédésére.
       Alapértelmezés szerint ugyanis ezeket a bevezető jeleket figyelmen kívül hagyja a sed.

       Az  "rfile"  és  "wfile"  jelölésű  argumentumok  a  parancssor  legvégén  kell  álljanak. A sed minden "wfile"-t létrehoz a
       feldolgozás megkezdése előtt.  Legfeljebb 10 "wfile" argumentum lehet.

       A következőkben ismertetjük a sed által ismert függvényeket.

       a "szöveg"   (1)
            Csatolás (append). A "szöveg"-et a kimenetre írja a következő bemeneti sor olvasása előtt.

       b "címke"  (2)
            Elágazás (branch) a "címkét" viselő `:' parancsra. Amennyiben nincs megadva címke, elágazás a szkript végére.

       c "szöveg"   (2)
            Csere (change). Törli az aktuális szövegpuffert. 0 vagy 1 címzéssel, illetve egy kétcímzéses tartomány végén  elhelyezi
            a "szöveg"-et a kimeneten. Elkezdi a következő ciklust.

       d          (2)
            Törli (delete) az aktuális szövegpuffert. Elkezdi a következő ciklust.

       D          (2)
            Törli  az  aktuális szövegpuffer első sorát, azaz az első újsor-karakter előtt álló karaktereket és ezt az újsor-jelet.
            Elkezdi a következő ciklust.

       g          (2)
            Helyettesíti az aktuális szövegpuffer tartalmát a második puffer (`hold space') tartalmával.

       G          (2)
            Az aktuális szövegpuffer tartalmához hozzáfűzi a második puffer (`hold space') tartalmát.

       h          (2)
            Az aktuális szövegpuffer tartalmát a második pufferbe másolja.

       H          (2)
            Az aktuális szövegpuffer tartalmát a második pufferhez fűzi.

       i "szöveg"   (1)
            Beilleszt (insert). Kiírja a "szöveg"-et a szabványos kimenetre.

       l          (2)
            Listáz. Kiküldi a mintaterületet a szabványos kimenetre. Az `s' parancshoz hasonlóan egy `w'  opció  követheti.  A  nem
            nyomtatható karakterek az alábbiak szerint kerülnek kifejtésre:

               \b  --  backspace (ASCII 08)
               \t  --  tab       (ASCII 09)
               \n  --  newline   (ASCII 10)
               \r  --  return    (ASCII 13)
               \e  --  escape    (ASCII 27)
               \xx --  a kétjegyű xx hexadecimális számmal megadható ASCII karakter.

       n          (2)
            Az aktuális szövegpuffer tartalmát a szabványos kimenetre másolja, és beolvassa helyette a következő bemeneti sort.

       N          (2)
            A  következő  bemeneti  sort  az  aktuális  szövegpuffer tartalmához fűzi, miközben egy újsor-jelet illeszt közéjük. Az
            aktuális sor száma megváltozik.

       p          (2)
            Nyomtat (print). Az aktuális szövegpuffer tartalmát a szabványos kimenetre másolja.

       P          (2)
            Az aktuális szövegpuffer első sorát, azaz az  első  újsor-karakter  előtt  álló  karaktereket  a  szabványos  kimenetre
            másolja.

       q          (1)
            Kilépés (quit). Elégazás a szkript végére. Nem kezd új ciklust.

       r "rfile"  (1)
            Belovassa (read) az "rfile" tartalmát és a kimenetre írja, még mielőtt a következő bemeneti sort beolvasná.

       s /szabályos kifejezés/helyettesítés/zászlók         (2)

            A  szabályos  kifejezés  előfordulásait  helyettesíti  az  aktuális  szövegpufferben. A `/' kivételével minden karakter
            használható. Teljesebb leírást lásd az ed  (1)  kézikönyv  lapján.   A  zászlók  a  következők  lehetnek:  (Bármelyikük
            előfordulhat, de az is lehet, hogy egyikük sem.)

            g  --  Globális.  A  string  minden  nem  átfedő  megjelenését  helyettesíti. Ha nincs megadva, csak az első megjelenés
            helyettesítődik.

            p -- Kinyomtatja (print) a minta területet ha helyettesítés történt.

            w -- Írás (write). Az aktuális szövegpuffert egy argumentumként megadott fájlhoz fűzi hozzá, ahogy a `w' parancsban, ha
            helyettesítés történik. Ha nincs fájl argumentum, a szabványos kimenetre történik az írás.

       t "címke"  (2)
            Feltételes  elágazás.  Elágazás  a  címkével jelzett `:' paracshoz, ha valamilyen helyettesítés történt a bemeneti fájl
            legújabb olvasása vagy a legutóbbi `t' vagy `T' végrehajtása óta. Ha  nincs  megadva  címke,  akkor  a  szkript  végére
            történik elágazás.

       T "címke"  (2)
            Ellentéte  a  `t'  parancsnak.  Elágazás  a  címkével  jelzett  `:' paracshoz, ha semmilyen helyettesítés sem történt a
            bemeneti fájl legújabb olvasása vagy a legutóbbi `t' vagy `T' végrehajtása óta. Ha nincs megadva címke, akkor a szkript
            végére történik elágazás.

       w "wfile"  (2)
            Írás (write). Az aktuális szövegpuffert a "wfile" fájl tartalmához fűzi.

       W "wfile"  (2)
            Az aktuális szövegpuffer első sorát a "wfile" fájl tartalmához fűzi.

       x          (2)
            Felcseréli (exchange) az aktuális szövegpuffer tartalmát a második puffer (`hold space') tartalmával.

       y /string1/string2/      (2)
            Fordít.  A  string1-ben  előforduló karaktereket a string2-ben azonos pozícióban előfordulóval helyettesíti. A stringek
            hossza egyenlő kell legyen.

       ! "parancs"              (2)
            Kivétel. Azokra a sorokra alkalmazza a függvényt (vagy csoportot, ha a függvény `}'), amelyek nem lettek  kiválaszva  a
            címzés(ek)kel.

       : "címke"  (0)
            Ez a parancs semmit sem csinál, csak a `b' és `t' parancsok elágazásaihoz visel címkét.

       =          (1)
            Az aktuális sorszámot a szabványos kimenetre írja, mint egy külön sort.

       {          (2)
            Parancs csoprotosítás. A következő `}'-ig adott parancsokat végrehajtja a címzés(ek) által meghatározott sorokra.

       Az üres parancsot figyelmen kívül hagyja.

ÁTVIHETŐSÉG
       Ez  az  eszköz  a  BSD 4.1 UNIX sed-je alapján fordított tervezéssel készült, és (amennyire a szerző tudása és a tesztek meg
       tudják határozni) kompatíbilis azzal. A BSD 4.1 sed-jének minden dokumentált lehetősége adott.

       Egy dokumentálatlan tulajdonság (az első megjegyzést bevezető `n' azonos hatását a  `-n  parancssor-opció'-val)  nem  került
       implementálásra.

       A BSD sed-hez képest javítások is történtek, melyeket itt terjedelmi okokból nem tárgyalunk.

MEGJEGYZÉS
       Ez  a  program  egy  `freeware'  komponense  a  GNU és MINIX operációs rendszereknek. A felhasználó itt megkapja a jogokat a
       program használatára, módosítására és terjesztésére a következő feltételek mellett:

       1. A szerzőségre vonatkozó megjegyzést minden forrásfájlban változatlanul meg kell hagyni.

       2. A lefordított változat forráskód nélkül nem terjeszthető.

LÁSD MÉG
       ed(1), grep(1), awk(1), lex(1), regexp(5)

SZERZŐ
       Ezt a kézikönyv lapot Eric S. Raymond <esr@snark.thyrsus.com> írta, habár a sed csomag a GNU-tól származik.

MAGYAR FORDÍTÁS
       Horváth András <horvatha@rs1.szif.hu>

                                                         November 19, 1995                                                   sed(1)

 

 

Súgó kimenet

sed --help
Használat: sed [OPCIÓ]... {parancsfájl-csak-ha-nincs-más-parancsfájl} [bemeneti fájl]…

  -n, --quiet, --silent
                 a minta tér automatikus kiírásának elnyomása
      --debug
                 annotate program execution
  -e parancsfájl, --expression=parancsfájl
                 parancsfájl hozzáadása a végrehajtandó parancsokhoz
  -f parancsfájl, --file=parancsfájl
                 a megadott parancsfájl tartalmának hozzáadása a végrehajtandó
                 parancsokhoz
  --follow-symlinks
                 szimbolikus linkek követése helyben feldolgozáskor
  -i[UTÓTAG], --in-place[=UTÓTAG]
                 fájlok szerkesztése helyben (biztonsági mentést készít, ha
                 az UTÓTAG meg van adva)
  -l N, --line-length=N
                 a kívánt sortörési hossz megadása az „l” parancshoz
  --posix
                 minden GNU kiterjesztés letiltása.
  -E, -r, --regexp-extended
                 kiterjesztett reguláris kifejezések használata a
                 parancsfájlban (a hordozhatóságért használja a -E kapcsolót)
  -s, --separate
                 a fájlokat külön kezeli egyetlen folyamatos, hosszú folyam
                 helyett.
      --sandbox
                 operate in sandbox mode (disable e/r/w commands).
  -u, --unbuffered
                 minimális mennyiségű adat betöltése a bemeneti fájlokból és a
                 kimeneti pufferek gyakori ürítése
  -z, --null-data
                 sorok elválasztása NULL karakterekkel
      --help     kiírja ezt a súgót és kilép
      --version  kiírja a verzióinformációt és kilép

Ha nincs megadva -e, --expression, -f vagy --file kapcsoló, akkor az első
nem-kapcsoló paramétert héjprogramnak tekintjük. Minden további paraméter
fájlnévnek számít. Ha nincs megadva bemeneti fájlnév, akkor a szabványos
bemenetről olvas.

GNU sed home page: <https://www.gnu.org/software/sed/>.
General help using GNU software: <https://www.gnu.org/gethelp/>.
Hibajelentést a következő címre küldhet: <bug-sed@gnu.org>.

 

Kapcsolódó tartalom

  •  

 

Címkék