hallo,
im mom suche ich noch vergebens nach einer lösung, wie ich eine datei in einen array einlese, danach eine bestimmte zeile (z.b. $file[36]) verändern kann und danach wieder zurück schreiben kann.
mfg sourcehunter
datei in einen array einlesen und verändert ausgeben
Re: datei in einen array einlesen und verändert ausgeben
In welcher Programmiersprache denn?
Re: datei in einen array einlesen und verändert ausgeben
ups! vor lauter testerei usw habe ich des ganz vergessen anzugeben...
PERL
PERL
Re: datei in einen array einlesen und verändert ausgeben
<blockquote><pre><font size="1" face="">code:</font><hr><font face="Courier New" size="2">
#!/usr/bin/perl -w
use strict;
use warnings;
open(PASSWD, "< /etc/passwd");
my @passwd=<PASSWD>;
close(PASSWD);
print "Zeile 3 enthaelt: $passwd<font size="3">";
# jetzt ersetzen wir "Printing Daemon" durch was anderes <img src="http://www.pl-forum.de/UltraBoard/Images/Happy.gif" border="0" align="middle">
$passwd<font size="3"> =~ s/Printing Daemon/Drucker Daemon/;
print "Zeile 3 enthaelt nach der Aenderung: $passwd<font size="3">";
__END__
</font><hr></pre></blockquote>
#!/usr/bin/perl -w
use strict;
use warnings;
open(PASSWD, "< /etc/passwd");
my @passwd=<PASSWD>;
close(PASSWD);
print "Zeile 3 enthaelt: $passwd<font size="3">";
# jetzt ersetzen wir "Printing Daemon" durch was anderes <img src="http://www.pl-forum.de/UltraBoard/Images/Happy.gif" border="0" align="middle">
$passwd<font size="3"> =~ s/Printing Daemon/Drucker Daemon/;
print "Zeile 3 enthaelt nach der Aenderung: $passwd<font size="3">";
__END__
</font><hr></pre></blockquote>
Re: datei in einen array einlesen und verändert ausgeben
Ahhhh die eckigen Klammern wieder....ok zeit um noch ein/zwei Kommentare einzufügen...
<blockquote><pre><font size="1" face="">code:</font><hr><font face="Courier New" size="2">
#!/usr/bin/perl -w
use strict;
use warnings;
# Datei /etc/passwd oeffnen und den Inhalt zeilenweise im Array "@passwd" abspeichern
open(PASSWD, "< /etc/passwd");
my @passwd=<PASSWD>;
close(PASSWD);
print "Zeile 3 enthaelt: $passwd[<!--no-->3<!--no-->]";
# zeile 3 aendern
# "Printing Daemon" durch was anderes anderes
$passwd[<!--no-->3<!--no-->] =~ s/Printing Daemon/Drucker Daemon/;
print "Zeile 3 enthaelt nach der Aenderung: $passwd[<!--no-->3<!--no-->]";
__END__
</font><hr></pre></blockquote>
<blockquote><pre><font size="1" face="">code:</font><hr><font face="Courier New" size="2">
#!/usr/bin/perl -w
use strict;
use warnings;
# Datei /etc/passwd oeffnen und den Inhalt zeilenweise im Array "@passwd" abspeichern
open(PASSWD, "< /etc/passwd");
my @passwd=<PASSWD>;
close(PASSWD);
print "Zeile 3 enthaelt: $passwd[<!--no-->3<!--no-->]";
# zeile 3 aendern
# "Printing Daemon" durch was anderes anderes
$passwd[<!--no-->3<!--no-->] =~ s/Printing Daemon/Drucker Daemon/;
print "Zeile 3 enthaelt nach der Aenderung: $passwd[<!--no-->3<!--no-->]";
__END__
</font><hr></pre></blockquote>
Re: datei in einen array einlesen und verändert ausgeben
wegen dem zurückschreiben:
<blockquote><pre><font size="1" face="">code:</font><hr><font face="Courier New" size="2">
#!/usr/bin/perl -w
use strict;
use warnings;
open(PASSWD, "< /etc/passwd");
my @passwd=<PASSWD>;
close(PASSWD);
print "Zeile 3 enthaelt: $passwd[<!--no-->3<!--no-->]";
# jetzt ersetzen wir "Printing Daemon" durch was anderes <img src="http://www.pl-forum.de/UltraBoard/Images/Happy.gif" border="0" align="middle">
$passwd[<!--no-->3<!--no-->] =~ s/Printing Daemon/Drucker Daemon/;
print "Zeile 3 enthaelt nach der Aenderung: $passwd[<!--no-->3<!--no-->]";
open(KOPIE, "> ./passwd.kopie");
print KOPIE @passwd;
close(KOPIE);
__END__
=head1 NAME
file_in_array.pl - ein simples Beispiel
=head1 EXAMPLE
open(PASSWD, "< /etc/passwd");
@passwd = <PASSWD>;
close(PASSWD);
...
...irgendwelche Aenderungen...
...
open(PASSWD, "> /etc/passwd");
print PASSWD @passwd;
close(PASSWD);
=head1 DESCRIPTION
Programm liest eine Datei (hier: /etc/passwd) in ein Array ein. Anschliessend
wird eine bestimmte Zeile des Arrays geaendert und der Array-Inhalt wieder in
eine Datei (hier: ./etc/passwd.kopie) geschrieben.
=head1 AUTHOR
Descartes
=cut
</font><hr></pre></blockquote>
<blockquote><pre><font size="1" face="">code:</font><hr><font face="Courier New" size="2">
#!/usr/bin/perl -w
use strict;
use warnings;
open(PASSWD, "< /etc/passwd");
my @passwd=<PASSWD>;
close(PASSWD);
print "Zeile 3 enthaelt: $passwd[<!--no-->3<!--no-->]";
# jetzt ersetzen wir "Printing Daemon" durch was anderes <img src="http://www.pl-forum.de/UltraBoard/Images/Happy.gif" border="0" align="middle">
$passwd[<!--no-->3<!--no-->] =~ s/Printing Daemon/Drucker Daemon/;
print "Zeile 3 enthaelt nach der Aenderung: $passwd[<!--no-->3<!--no-->]";
open(KOPIE, "> ./passwd.kopie");
print KOPIE @passwd;
close(KOPIE);
__END__
=head1 NAME
file_in_array.pl - ein simples Beispiel
=head1 EXAMPLE
open(PASSWD, "< /etc/passwd");
@passwd = <PASSWD>;
close(PASSWD);
...
...irgendwelche Aenderungen...
...
open(PASSWD, "> /etc/passwd");
print PASSWD @passwd;
close(PASSWD);
=head1 DESCRIPTION
Programm liest eine Datei (hier: /etc/passwd) in ein Array ein. Anschliessend
wird eine bestimmte Zeile des Arrays geaendert und der Array-Inhalt wieder in
eine Datei (hier: ./etc/passwd.kopie) geschrieben.
=head1 AUTHOR
Descartes
=cut
</font><hr></pre></blockquote>
Re: datei in einen array einlesen und verändert ausgeben
HEY, sau geil THX!!!
So ähnlich hatte ich des auch einmal....
Endlich funzt des script!!!! thx
mfg sourcehunter
So ähnlich hatte ich des auch einmal....
Endlich funzt des script!!!! thx
mfg sourcehunter