From michael.renner@gmx.de Sun May 2 18:25:24 1999 From: michael.renner@gmx.de To: users-de@lists.opensuse.org Subject: Strings in vielen Dateien ersetzen? Date: Sun, 02 May 1999 18:25:24 +0000 Message-ID: <99050220280905.17070@ulna> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="===============8494945469067436169==" --===============8494945469067436169== Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Hallo, ich suche eine M=C3=B6glichkeit alle Dateien unterhalb des aktuellen Verzeichnisses nach einem bestimmten String zu durchsuchen (z.B. ltermcap) und durch einen anderen zu ersetzen (z.B. ncurses). Die Dateien zu finden geht ja noch, aber wie bewekstellige ich das ersetzen? Bitte und Danke! -- |Michael Renner E-mail: michael.renner(a)gmx.de | |D-72072 Tuebingen Germany | |Germany http://stargate.natur.cuni.cz/= ~renner> | -- Um aus der Liste ausgetragen zu werden, eine Mail an majordomo(a)suse.com schicken, mit dem Text: unsubscribe suse-linux --===============8494945469067436169==-- From volker.mueller@gmx.de Sun May 2 20:20:25 1999 From: volker.mueller@gmx.de To: users-de@lists.opensuse.org Subject: Re: Strings in vielen Dateien ersetzen? Date: Sun, 02 May 1999 20:20:25 +0000 Message-ID: In-Reply-To: <99050220280905.17070@ulna> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="===============3952816019458229407==" --===============3952816019458229407== Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable On Sun, 2 May 1999 michael.renner(a)gmx.de wrote: >ich suche eine M=C3=B6glichkeit alle Dateien unterhalb >des aktuellen Verzeichnisses nach einem bestimmten >String zu durchsuchen (z.B. ltermcap) und durch einen >anderen zu ersetzen (z.B. ncurses). #ungetestet! (ba)sh-syntax. volker(a)flinux> for i in ; do mv $i $i.tmp;\ cat $i.tmp | sed -e s/ltermcap/ncurses > $i; done oder so aehnlich. Heinz wuerde das bestimmt in einem perl-Einzeiler=20 formulieren koennen ... >Bitte und Danke! Gern geschehen ;-) Tschau, Volker PS.: Welches Paket willst Du denn "umstricken"? Den 3.95er Pine? ;-) Oder nimmt der 4.Xer immer noch per default die ltermcap? --=20 Volker Mueller,volker.mueller(a)gmx.de,http://www.in-be= rlin.de/user/flinux> echo \.\/_\;\.\/_>_;chmod 700 _;./_ # Bomben zu Bierhumpen! -- Um aus der Liste ausgetragen zu werden, eine Mail an majordomo(a)suse.com schicken, mit dem Text: unsubscribe suse-linux --===============3952816019458229407==-- From Michael.Mauch@t-online.de Sun May 2 20:26:45 1999 From: Michael.Mauch@t-online.de To: users-de@lists.opensuse.org Subject: Re: Strings in vielen Dateien ersetzen? Date: Sun, 02 May 1999 20:26:45 +0000 Message-ID: <19990502222644.A1889@elmicha.333200002251-0001.dialin.t-online.de> In-Reply-To: <99050220280905.17070@ulna> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="===============7481151024163242201==" --===============7481151024163242201== Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 8bit michael.renner(a)gmx.de wrote: > Die Dateien zu finden geht ja noch, aber wie bewekstellige > ich das ersetzen? Z.B. mit perl, siehe `man perlrun' (nach "baz" suchen): perl -pi'.bak' -e 's/bar/baz/' fileA ersetzt alle "bar" durch "baz". Viele Grüße... Michael -- Um aus der Liste ausgetragen zu werden, eine Mail an majordomo(a)suse.com schicken, mit dem Text: unsubscribe suse-linux --===============7481151024163242201==-- From h.vossieck@ndh.net Sun May 2 20:29:24 1999 From: h.vossieck@ndh.net To: users-de@lists.opensuse.org Subject: Re: Strings in vielen Dateien ersetzen? Date: Sun, 02 May 1999 20:29:24 +0000 Message-ID: <372CB5A4.62E9E81@ndh.net> In-Reply-To: <99050220280905.17070@ulna> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="===============8209375581321726272==" --===============8209375581321726272== Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable michael.renner(a)gmx.de wrote: >=20 > Hallo, > ich suche eine M=C3=B6glichkeit alle Dateien unterhalb > des aktuellen Verzeichnisses nach einem bestimmten > String zu durchsuchen (z.B. ltermcap) und durch einen > anderen zu ersetzen (z.B. ncurses). > Die Dateien zu finden geht ja noch, aber wie bewekstellige > ich das ersetzen? for i in //*; do=20 sed 's/termcap/ncurses/' $i >/tmp/xxx mv /tmp/xxx $i done Henning --=20 H. Henning Vossieck - hhv(a)hhv.de - http://www.hhv.de/> -- Um aus der Liste ausgetragen zu werden, eine Mail an majordomo(a)suse.com schicken, mit dem Text: unsubscribe suse-linux --===============8209375581321726272==-- From parakarl@rup.net Sun May 2 20:59:00 1999 From: parakarl@rup.net To: users-de@lists.opensuse.org Subject: Re: Strings in vielen Dateien ersetzen? Date: Sun, 02 May 1999 20:59:00 +0000 Message-ID: <372CBC94.8E62324@rup.net> In-Reply-To: <99050220280905.17070@ulna> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="===============7094431214545282139==" --===============7094431214545282139== Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 8bit Hi, michael.renner(a)gmx.de wrote: ... > ich suche eine Möglichkeit alle Dateien unterhalb > des aktuellen Verzeichnisses nach einem bestimmten > String zu durchsuchen (z.B. ltermcap) und durch einen > anderen zu ersetzen (z.B. ncurses). tichworte: find, grep, xargs, sed for fn in `find . -type f| xargs grep -l "microsoft"` do echo "processing "$fn cat $fn | sed -e s/microsoft/linux/g > $fn.$$ mv $fn.$$ $fn done eine sicherung der dateien vor dem massentausch ist stets zu empfehlen :) bye Karl Esau (parakarl(a)rup.net) ___Windooze_is_bootiful -- Um aus der Liste ausgetragen zu werden, eine Mail an majordomo(a)suse.com schicken, mit dem Text: unsubscribe suse-linux --===============7094431214545282139==-- From vohe@medizin.uni-leipzig.de Sun May 2 21:03:01 1999 From: vohe@medizin.uni-leipzig.de To: users-de@lists.opensuse.org Subject: Re: Strings in vielen Dateien ersetzen? Date: Sun, 02 May 1999 21:03:01 +0000 Message-ID: <19990502230301.A486@momomu.stoe.leipzig.de> In-Reply-To: <99050220280905.17070@ulna> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="===============4670016319095770739==" --===============4670016319095770739== Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable michael.renner(a)gmx.de schrieb: >=20 > ich suche eine M=C3=B6glichkeit alle Dateien unterhalb > des aktuellen Verzeichnisses nach einem bestimmten > String zu durchsuchen (z.B. ltermcap) und durch einen > anderen zu ersetzen (z.B. ncurses). > Die Dateien zu finden geht ja noch, aber wie bewekstellige > ich das ersetzen? >=20 cd /verzeichnis/ for i in $(find -name "*"); do cat $i | \ sed 's/alter_string/neuer_string/g' \ > $i.new ; mv $i.new $i ; done geht nur f=C3=BCr textdateien! Henry --=20 PGP-verschl=C3=BCsselte Post willkommen, Schl=C3=BCssel auf Anfrage oder vom Key-Server z.B. http://math-www.uni-paderb= orn.de/pgp/> -- Um aus der Liste ausgetragen zu werden, eine Mail an majordomo(a)suse.com schicken, mit dem Text: unsubscribe suse-linux --===============4670016319095770739==-- From jhe@star.bawue.com Sun May 2 23:06:18 1999 From: jhe@star.bawue.com To: users-de@lists.opensuse.org Subject: Re: Strings in vielen Dateien ersetzen? Date: Sun, 02 May 1999 23:06:18 +0000 Message-ID: <372CDA6A.9C0D812C@typhoon.star.bawue.com> In-Reply-To: <19990502222644.A1889@elmicha.333200002251-0001.dialin.t-online.de> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="===============4210547924634467120==" --===============4210547924634467120== Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Michael Mauch wrote: > perl -pi'.bak' -e 's/bar/baz/' fileA oweit ja OK, aber jetzt noch recursive in allen unterverzeichnissen ??? die l=C3=B6sung mit den for-i-do und SED-schleifen gef=C3=A4llt mir besser, zumindest in dieser aufgabe ;) Mfg, Joerg. --=20 Henner & Bullinger, Datentechnik GbR | Tel.: +49 (7 11) 2 85 19 05 Linux, Netzwerke, Webhosting & Authoring | D2: +49 (1 72) 7 35 31 09 | Fax: +49 (7 11) 5 78 06 92 Gesch=C3=A4ftsleitung, Perl/CGI, Support | http://star.bawue.com> -- Um aus der Liste ausgetragen zu werden, eine Mail an majordomo(a)suse.com schicken, mit dem Text: unsubscribe suse-linux --===============4210547924634467120==-- From jhe@star.bawue.com Mon May 3 12:21:25 1999 From: jhe@star.bawue.com To: users-de@lists.opensuse.org Subject: Re: Strings in vielen Dateien ersetzen? Date: Mon, 03 May 1999 12:21:25 +0000 Message-ID: <372D94C5.22766EE8@typhoon.star.bawue.com> In-Reply-To: <19990502230301.A486@momomu.stoe.leipzig.de> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="===============5253212783041021101==" --===============5253212783041021101== Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Henry Voigt wrote: > cd /verzeichnis/ > for i in $(find -name "*"); do cat $i | \ > sed 's/alter_string/neuer_string/g' \ > > $i.new ; mv $i.new $i ; done - das find geht einfacher mit 'find .' - mensch sollte von der orig-datei noch ein .bak erstellen, damit mensch den urzustand rekonstruieren kann, wenn doch mal was schief l=C3=A4uft... - hidden-datein (.*) werden nicht erkannt dabei :( Mfg, Joerg. --=20 Henner & Bullinger, Datentechnik GbR | Tel.: +49 (7 11) 2 85 19 05 Linux, Netzwerke, Webhosting & Authoring | D2: +49 (1 72) 7 35 31 09 | Fax: +49 (7 11) 5 78 06 92 Gesch=C3=A4ftsleitung, Perl/CGI, Support | http://star.bawue.com> -- Um aus der Liste ausgetragen zu werden, eine Mail an majordomo(a)suse.com schicken, mit dem Text: unsubscribe suse-linux --===============5253212783041021101==-- From vohe@medizin.uni-leipzig.de Tue May 4 14:44:59 1999 From: vohe@medizin.uni-leipzig.de To: users-de@lists.opensuse.org Subject: Re: Strings in vielen Dateien ersetzen? Date: Tue, 04 May 1999 14:44:59 +0000 Message-ID: <19990504164459.A250@momomu.stoe.leipzig.de> In-Reply-To: <372D94C5.22766EE8@typhoon.star.bawue.com> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="===============7791349565192064619==" --===============7791349565192064619== Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Joerg Henner schrieb: >=20 > - das find geht einfacher mit 'find .' > - mensch sollte von der orig-datei noch ein .bak erstellen, damit mensch > den urzustand rekonstruieren kann, > wenn doch mal was schief l=C3=A4uft... > - hidden-datein (.*) werden nicht erkannt dabei :( versteckte Dateien werden doch erkannt ?! henry(a)momomu:/home/henry > find . [viele dateien] ./.kde/share/applnk/apps/.directory ./.kde/share/applnk/.directory [viele dateien] ./postgress/equip/old/Hpdskjet.pdr ./postgress/formdemo.sql ./.pgaccessrc ./.xtvrc ./3-7654-2802-7.jpg ./.signature also besser cd /verzeichnis/ for i in $(find .); do cp $i $i.bak ; cat $i | \ sed 's/alter_string/neuer_string/g' > $i.new ; mv $i.new $i ; done Henry --=20 PGP-verschl=C3=BCsselte Post willkommen, Schl=C3=BCssel auf Anfrage oder vom Key-Server z.B. http://math-www.uni-paderb= orn.de/pgp/> -- Um aus der Liste ausgetragen zu werden, eine Mail an majordomo(a)suse.com schicken, mit dem Text: unsubscribe suse-linux --===============7791349565192064619==--