Ero sivun ”Sed” versioiden välillä

Linux.fista
Siirry navigaatioon Siirry hakuun
p (kh,luokka)
pEi muokkausyhteenvetoa
Rivi 1: Rivi 1:
Stream Editor on [[tiedosto|tiedostojen]] ja [[syötevirta|syötevirtojen]] yksinkertaiseen automaattiseen muokkaamiseen tarkoitettu ohjelma ja tavallaan myös kieli. Kuten useimmista muistakin peruskomentorivityökaluista, tästäkin on useita toteutuksia.
Sed eli Stream Editor on [[tiedosto|tiedostojen]] ja [[syötevirta|syötevirtojen]] yksinkertaiseen automaattiseen muokkaamiseen tarkoitettu ohjelma ja tavallaan myös kieli. Kuten useimmista muistakin peruskomentorivityökaluista, tästäkin on useita toteutuksia.


==Käyttö==
==Käyttö==
Tyypillisin käyttökohde on [[bash-skriptaus|bash]] [[komentorivin perusteet|putkia]] käytettävä muoto
Tyypillisin käyttötapa on [[komentotulkki|komentotulkin]] [[komentorivin perusteet|putkitusominaisuutta]] käytettävä muoto
  <tulostava komentolauseke> | sed -e "<sed-lauseke>"
  <tulostava komentolauseke> | sed -e "<sed-lauseke>"
sed kykenee muokkaamaan myös tiedostoja
Sed kykenee muokkaamaan myös tiedostoja
  sed -i <muokattava-tiedosto>
  sed -i <muokattava-tiedosto>
===sedin ohjaaminen===
===Sedin ohjaaminen===
sed vastaanottaa muokkaustemplaatin joko tiedostona
Sed vastaanottaa muokkaustemplaatin joko tiedostona
  sed -f <skriptitiedosto>
  sed -f <skriptitiedosto>
tai komentoriviargummenttina
tai komentoriviargumenttina
  sed -e <sed-lauseke>
  sed -e <sed-lauseke>
===sed-lausekkeet===
===Sed-lausekkeet===
tyypillisin sed-lauseke lienee epäilemättä  
Tyypillisin sed-lauseke lienee epäilemättä  
  s/<korvattava lauseke>/<korvaava lauseke>/g
  s/<korvattava lauseke>/<korvaava lauseke>/g
sedissa s/// siis korvaa yksittäisia [[wikipedia:fi:merkkijono|osamerkkijonoja]] toisilla, g perässä kertoo, että kaikki vastaavuudet korvataan, eikä vain rivin ensimmäistä
Sedissa s/// siis korvaa yksittäisia [[wikipedia:fi:merkkijono|osamerkkijonoja]] toisilla, g perässä kertoo, että kaikki vastaavuudet korvataan, eikä vain rivin ensimmäistä.


===Esimerkkejä===
===Esimerkkejä===

Versio 10. toukokuuta 2007 kello 12.25

Sed eli Stream Editor on tiedostojen ja syötevirtojen yksinkertaiseen automaattiseen muokkaamiseen tarkoitettu ohjelma ja tavallaan myös kieli. Kuten useimmista muistakin peruskomentorivityökaluista, tästäkin on useita toteutuksia.

Käyttö

Tyypillisin käyttötapa on komentotulkin putkitusominaisuutta käytettävä muoto

<tulostava komentolauseke> | sed -e "<sed-lauseke>"

Sed kykenee muokkaamaan myös tiedostoja

sed -i <muokattava-tiedosto>

Sedin ohjaaminen

Sed vastaanottaa muokkaustemplaatin joko tiedostona

sed -f <skriptitiedosto>

tai komentoriviargumenttina

sed -e <sed-lauseke>

Sed-lausekkeet

Tyypillisin sed-lauseke lienee epäilemättä

s/<korvattava lauseke>/<korvaava lauseke>/g

Sedissa s/// siis korvaa yksittäisia osamerkkijonoja toisilla, g perässä kertoo, että kaikki vastaavuudet korvataan, eikä vain rivin ensimmäistä.

Esimerkkejä

echo ababaabcd | sed -e s/\(ab\)*//

tulostaa "aabcd". Vastaavasti g:n kanssa

echo ababaabcd | sed -e s/\(ab\)*//g

tulostaa "acd", tässä * on kuitenkin turha, koska g vastaa saman merkkijonon mielivaltaisen monta kertaa.

Katso myös