Locked History Actions

Skirtumas „sed“

Pakeitimai tarp versijų 2 ir 3
Versija 2 nuo 2010-03-20 17:03:19
Dydis: 678
Redaktorius: LeonasPetraitis
Komentaras:
Versija 3 nuo 2010-03-20 17:21:38
Dydis: 2266
Redaktorius: LeonasPetraitis
Komentaras:
Pašalinimai yra pažymėti taip. Pridėjimai yra pažymėti taip.
Eilutė 12: Eilutė 12:
''sed'' reiškia ''Stream EDitor''. Tai yra programa neinteraktyviam srautų redagavimui. Jei komandų eilutėje nenurodyti jokie failai, jis skaito iš standartinio įvedimo ir rašo į standartinį išvedimą.
Eilutė 13: Eilutė 14:
Tipiška sed iškvietimo sintaksė yra tokia:

{{{
sed -e ’komanda’ išvesties failai > įvesties_failas
}}}
{{{
sed skripto_vardas įvesties failai > išvesties_failas
}}}
Skripto failas gali būti sudarytas iš komandų, esančių skirtingose eilutėse, o komandos sintaksė yra tokia:

{{{
<adresas><komanda><parametrai>
}}}
Adresas gali būti eilutės numeris (numeruojama nuo vieneto), eilučių diapazonas nurodomas per kablelį, arba šablonas /tarp pasvirųjų brūkšnelių/.

Pavyzdžiui, 2d reiškia išturintį antrą eilutę.

Taip pat tai yra teksto paieškos ir modifikavimo komanda. Ši programa kiekvienai failo eilutei pritaiko pateiktą komandą. sed komandos struktūra:

{{{
[adresas] [,adresas] [!] komanda [argumentai]
}}}
Viena svarbia usių yra eilutės modifikavimo funkcija:

{{{
[adresas] [,adresas] s /ką pakeisti/kuo pakeisti/[opcijos]
}}}
Eilutė 16: Eilutė 44:
$ sed s/sveix/sveikas/g $ sed /BSD/d $ sed /BSD/!d $ sed /^BEGIN/,/^END/p $ sed /^BEGIN/,/^END/!s/sveix/sveikas/g $ sed /function/{ s/”/(/3 s/”/)/4 } $ sed /Title/s/”//g $ sed { s/://p s/”//gp} $ sed /ifdef/!s/if/\tif/ {{{
sed -e 's/Windows/Unix/' duomenys
}}}
pakeičia pirma žodį eilutėje Windows į žodį Unix.

{{{
sed -e 's/Windows/Unix/g' duomenys
}}}
Visus žodžius Windows pakeičia į žodį Unix.

{{{
sed -e '3,5s/Windows/Unix/g'
}}}
Reiškia nuo trečios iki penktos eilutės pakeisti žodį Windows į žodį Unix.

{{{
ps -a | sed 10q
}}}
Išveda pirmas 10 eilučių.

{{{
sed 1,4d
}}}
ištrinti 1-4 failo eilutes.

{{{
sed /antra/,/penkta/d
}}}
ištrina tekstą tarp eilučių, kuriose yra antra ir penkta žodžiai.

{{{
sed -n /antra/,/penkta/p
}}}
išveda tekstą tarp antra ir penkta žodžių.

{{{
sed /^a/d
}}}
išmeta eilutes, kurios prasideda a raide.

sed

Linux, BSD


Apibūdinimas

Srautinis redaktorius (Stream EDitor).


Paaiškinimai

sed reiškia Stream EDitor. Tai yra programa neinteraktyviam srautų redagavimui. Jei komandų eilutėje nenurodyti jokie failai, jis skaito iš standartinio įvedimo ir rašo į standartinį išvedimą.

Tipiška sed iškvietimo sintaksė yra tokia:

sed -e ’komanda’ išvesties failai > įvesties_failas

sed skripto_vardas įvesties failai > išvesties_failas

Skripto failas gali būti sudarytas iš komandų, esančių skirtingose eilutėse, o komandos sintaksė yra tokia:

<adresas><komanda><parametrai>

Adresas gali būti eilutės numeris (numeruojama nuo vieneto), eilučių diapazonas nurodomas per kablelį, arba šablonas /tarp pasvirųjų brūkšnelių/.

Pavyzdžiui, 2d reiškia išturintį antrą eilutę.

Taip pat tai yra teksto paieškos ir modifikavimo komanda. Ši programa kiekvienai failo eilutei pritaiko pateiktą komandą. sed komandos struktūra:

[adresas] [,adresas] [!] komanda [argumentai]

Viena svarbia usių yra eilutės modifikavimo funkcija:

[adresas] [,adresas] s /ką pakeisti/kuo pakeisti/[opcijos]


Pavyzdžiai

sed -e 's/Windows/Unix/' duomenys

pakeičia pirma žodį eilutėje Windows į žodį Unix.

sed -e 's/Windows/Unix/g' duomenys

Visus žodžius Windows pakeičia į žodį Unix.

sed -e '3,5s/Windows/Unix/g'

Reiškia nuo trečios iki penktos eilutės pakeisti žodį Windows į žodį Unix.

ps -a | sed 10q

Išveda pirmas 10 eilučių.

sed 1,4d

ištrinti 1-4 failo eilutes.

sed /antra/,/penkta/d

ištrina tekstą tarp eilučių, kuriose yra antra ir penkta žodžiai.

sed -n /antra/,/penkta/p

išveda tekstą tarp antra ir penkta žodžių.

sed /^a/d

išmeta eilutes, kurios prasideda a raide.


Naudota literatūra


CategoryŽodis