Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

sed ili grep skripta za brisanje konkretnog teksta iz dototeke!

[es] :: Skript jezici :: sed ili grep skripta za brisanje konkretnog teksta iz dototeke!

[ Pregleda: 3158 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Milantex
Milan Tair
Beograd

Član broj: 137126
Poruke: 60
*.adsl-3.sezampro.yu.

Sajt: www.milantex.info


+1 Profil

icon sed ili grep skripta za brisanje konkretnog teksta iz dototeke!15.06.2009. u 11:38 - pre 179 meseci
Pozdrav,
Imam problem sa regular expressions kada hocu da napisem komandu koja pretrazuje neku datoteku za "precizno definisani string", a ne "sablon" i ceo red u toj datoteci brise!

string je slecdeci:
Code:
if(!funcion_exists('tmp_

Dakle, imam neki exploit u gomili datoteka (200+) koje sam nasao grepom, mrzi me da kopam jednu po jednu da trazim i brisem taj deo koda, pa bih uradio skriptu, ali nikako ne mogu da nateram skriptu da radi, jer ne znam kako da sed nateram da shvati string kao "apsolutan, takav kakav je", a ne da ga tretira kao sablon, a pored toga, ne znam koje karaktere treba da escape-ujem!

Pokusao sam:
Code:
sed "/if(!funcion_exists('tmp_/d" filename.php 
ali nije uspelo.
Pokusao sam i:
Code:
grep -v "if(!funcion_exists('tmp_" filename
pa da taj ispis prepisem u isti fajl posle, ali ni to nije upalilo.

Ne vidim u cemu je problem, osim u mom definisanju stringa! Da li iko moze da mi pomogne da mi napise sed kod koji ce da obrise ceo red u kome se u datoteci pojavljuju sledeci tekstovi:
Code:
if(!function_exists('tmp_
?><?php echo '<script type="text/javascript">var
print "<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\"/></head><body><script>function

Za ta tri pokusavam da uradim da brise ceo red gde se nalaze!

Please help... nisam bas unix expert! :D
 
Odgovor na temu

uranium
Beograd

Član broj: 60097
Poruke: 543
79.101.218.*

Jabber: uranium@elitesecurity.org
ICQ: 324386953


+5 Profil

icon Re: sed ili grep skripta za brisanje konkretnog teksta iz dototeke!15.06.2009. u 12:12 - pre 179 meseci
Čini mi se da je ipak jednostavnije bez sed ...

prvo ubaci u zaseban fajl sve stringove koje tražiš
( svaki na zasebnoj liniji )
[ u primeru sam ga nazvao patterns, a fajl koji sređuješ - fix.me ]

onda je rešenje recimo:


fgrep -v -f patterns fix.me > fixed

Attempt all the problems. Those you can do, don't do. Do the ones you cannot.
 
Odgovor na temu

Milantex
Milan Tair
Beograd

Član broj: 137126
Poruke: 60
*.adsl-3.sezampro.yu.

Sajt: www.milantex.info


+1 Profil

icon Re: sed ili grep skripta za brisanje konkretnog teksta iz dototeke!15.06.2009. u 12:41 - pre 179 meseci
Super!
Hvala puno, ovo je bas ono sto mi je trebalo!
mada mi i dalje nije jasno zasto ono moje grep -v "string" < file nije htelo da radi, ali nema veze.
Thanx man!
 
Odgovor na temu

jablan

Član broj: 8286
Poruke: 4541



+710 Profil

icon Re: sed ili grep skripta za brisanje konkretnog teksta iz dototeke!15.06.2009. u 12:45 - pre 179 meseci
Citat:
Milantex: mada mi i dalje nije jasno zasto ono moje grep -v "string" < file nije htelo da radi, ali nema veze.

Zato što ti taj grep juri regexp, a u tvom stringu imaš karaktere koji imaju posebno značenje kada se koriste kao regexp (npr. zagrade). Sa druge strane, fgrep pattern koristi kao fiksni string, a ne regularni izraz.

Poz.
 
Odgovor na temu

Milantex
Milan Tair
Beograd

Član broj: 137126
Poruke: 60
*.adsl-1.sezampro.yu.

Sajt: www.milantex.info


+1 Profil

icon Re: sed ili grep skripta za brisanje konkretnog teksta iz dototeke!15.06.2009. u 13:11 - pre 179 meseci
:D
Pih... i mislio sam da je do reg. exp. ali nisam znao kako da ga zaobidjem... probao sam i za ' i sa " navodima stringova, ali nije radilo.
Hvala! Sada znam za fgrep :D
Pozdrav!
 
Odgovor na temu

[es] :: Skript jezici :: sed ili grep skripta za brisanje konkretnog teksta iz dototeke!

[ Pregleda: 3158 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.