Ero sivun ”Sed” versioiden välillä

Linux.fista
Siirry navigaatioon Siirry hakuun
Ei muokkausyhteenvetoa
 
p (kh,luokka)
Rivi 2: Rivi 2:


==Käyttö==
==Käyttö==
Tyypillisin käyttökohde on [[bash|bash-skripteissä]] putkia käytettävä muoto
Tyypillisin käyttökohde on [[bash-skriptaus|bash]] [[komentorivin perusteet|putkia]] 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
Rivi 16: Rivi 16:
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ä===
  echo ababaabcd | sed -e s/\(ab\)*//
  echo ababaabcd | sed -e s/\(ab\)*//
tulostaa "aabcd". Vastaavasti g:n kanssa
tulostaa "aabcd". Vastaavasti g:n kanssa
Rivi 22: Rivi 22:
tulostaa "acd", tässä * on kuitenkin turha, koska g vastaa saman merkkijonon mielivaltaisen monta kertaa.
tulostaa "acd", tässä * on kuitenkin turha, koska g vastaa saman merkkijonon mielivaltaisen monta kertaa.


==Katso==
==Katso myös==
*[[Säännöllinen lauseke]]
*[[Säännöllinen lauseke]]
[[Luokka:Komentorivi]]

Versio 10. toukokuuta 2007 kello 11.11

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ökohde on bash putkia 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 komentoriviargummenttina

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