![]() |
|
|
google unix.com
|
|||||||
| Forum | Registrera | Forum Regler | Länkar | Album | FAQ | Medlemslista | Kalender | Söka | Dagens inlägg | Markera forum som lästa |
| Shell-programmering och Skript Post frågor om ksh, CSH, SH, bash, PERL, PHP, sed, awk och andra skalskript och skal skriptspråk här. |
![]() |
|
|
LinkBack | Thread Tools | Sök i denna tråd | Rate Thread | Visningslägen |
|
|
|
||||
|
Verkligen uppskatta er hjälp killar am nu börjar få grepp om bash, men inte riktigt ......
antar att jag har en förklaring fileA .... Fot är ett ord som vi kan använda i alla aspekter av våra liv och har flera meanings.part av det kan en fot pedalen eller snarare fotbollen också. Jag vill använda sed att ersätta just ordet "fot" inget mer och när det ATS början av en rad ersätta med lock ....... om jag ville ersätta den med säga spela..... det blir Spela är ett ord som vi kan använda i alla aspekter av våra liv och har flera meanings.part av det kan en spela pedalen eller snarare spelabollen också. har försökt detta #! / bin / bash IFS \u003d $ '\ n' for i in $ (cat fileA); göra echo $ i | sed -r 's / ^ [fot] ^ / spela: g ">> fileB gjord Senast redigerad av vadharah; 03-16-2008 vid 02:29.. Orsak: lättare för tittarna |
|
||||
|
Jag har försökt detta, men ord som fotboll r påverkas Jag behöver fotbollen förbli oförändrad bara byta fot där ordet inte är en del av ett ord
|
|
||||
|
använda sed stream ediditor
Thanx! som verkar göra trick ... Finns det något sätt jag kan förbättra det vill säga till exempel meddela mig att det finns ett liknande ord, men det är en del av ett ord?
|
|
||||
|
Du får utanför ramen för vad sed rimligen kan göra. Här skulle jag nog byta till Perl. Kod:
perl -pe 's/\bFoot\b/Play/g;s/\bfoot\b/play/g; warn if m/[Ff]oot/' files ... Detta bör hantera fullt stopp och andra skiljetecken, som sed skriptet inte kommer att (utan ytterligare inblandning). |