Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno Žádost o pomoc s VBS skripty (vyhledání>nahrazení, uložení do souboru)

2. find -type f -name "*.h" -exec sed -i "s/Z+\([456789]\d|\d{3,}\)\./Z+40./g"

find -type f -name "*.h" -exec : viz vyse - najdi *.h a neco s tim udelej
sed : nahrazovani
-i : in-place - udela zmeny primo v souboru, misto aby ho nechal netknuty a vypsal vysledek. Proste ten soubor zedituje

"s/vzor/nahrada/parametry" : viz vyse - parametr "g" (global) znamena, ze to udela i pro vic vyskytu na jednom radku
Z+ : musi to zacinat "Z+" (asi souradnice zet a kladne znaminko)
\(neco\) : o tohle nam jde - viz vyse
[456789]\d : jeden ze znaku 456789 nasledovany cislici (cili 40..99)
| : jako cast regularniho vyrazu znamena NEBO (OR)
\d{3,} : cislice v poctu 3 a vice 100..9999999999999...
\. : tecka. Protoze tecka sama o sobe predstavuje "libovolny znak" tak ji escapujeme backslashem. Takze tato dvojice znamena "tecka osobne"
/ :oddelovac
: cili vzor je napriklad Z+123. obsah zavorky pak je 123 - jdeme to nahradit vyrazem
Z+40. : zet plus 40 tecka, cili obsah zavorky proste nepouzijeme, kdyz je to Z+40. a vic, tak tam dame Z+40.
/ : opet oddelovac
g : parametry - globalne - pokud by radek byl "Z+50. X+60. Z+70." tak se nahradi oba vyskyty a dostaneme "Z+40. X+60. Z+40."


vsechno je to popsane v "man" strankach pro dane prikazy - pokud delate nejake podobne upravy casteji, tak vazne doporucuju si sehnat linux/cygwin a tohle nastudovat. usetri to strasnou spoustu zbytecne driny

Reakce na odpověď

1 Zadajte svou přezdívku:
2 Napište svou odpověď:
3 Pokud chcete dostat ban, zadejte libovolný text:

Zpět do poradny