WCM Forum

WCM Forum (http://www.wcm.at/forum/index.php)
-   Programmierung (http://www.wcm.at/forum/forumdisplay.php?f=17)
-   -   UNIX Shell / Text ersetzen (http://www.wcm.at/forum/showthread.php?t=39519)

pc.net 14.12.2001 16:07

UNIX Shell / Text ersetzen
 
ich möchte in einem UNIX shell-script eine bestimmte zeichenfolge
in einer textdatei ersetzen.

konkretes problem: der operator startet das shell mittels parameter
dieser parameter gibt ein später per ftp zu transferierendes file an.
das shell-script soll eine bestimmte zeichenfolge im eingabe-file für
das ftp verändern und danach eben das ftp mit dem veränderten file
starten.

irgendwie hab ich nix gefunden, um eine text-datei automatisiert zu
editieren.

weiß jemand rat?

danke im voraus
pc.net

ps: ich wüßte ein sql-lösung, aber die finde ich überhaupt nicht
elegant. außerdem hauts net hin, wenn die oracle-db down ist.

Sonic 14.12.2001 17:30

HI!

"SED" ist dein Freund! :)

Zitat:

#!/bin/sh
# ersetze $1 mit $2 in Datei $3 schreibe in Datei $4
OLD=$1 #originaltext teil
NEW=$2 #Neuer Text
INFILE=$3 #quelldatei
OUTFILE=$4 #zieldatei

sed "s/$OLD/$NEW/g" $INFILE > $OUTFILE

done
Ich hoffe sowas in der Art hast du dir vorgestellt!

PS.: Ich hab den Code nicht getestet und übernehme keinerlei Haftung dafür! :)

lg

pc.net 14.12.2001 17:48

thx

ich werd das ding halt nächsten montag ausprobieren ...

wenns nicht funktioniert dann verklag ich dich bis aufs letzte hemd ;)

sonst :bier:

schlitzer 14.12.2001 18:16

"sed" ist neben "awk" so ungefaehr das GEILSTE tool, was ich jemals auf einem computer gesehen habe!

sorry, das musste jetzt sein! :D

pc.net 17.12.2001 20:17

@sonic
thx für die neue bekanntschaft - SED hat mir wirklich sehr geholfen und wirds auch in zukunft weiter tun.

ps: du darfst dein hemd behalten ;)


Alle Zeitangaben in WEZ +2. Es ist jetzt 18:41 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
© 2009 FSL Verlag