1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
#!/usr/bin/perl use strict; use warnings; use Encode qw/from_to/; my $DEBUG = 0; while (<>) { print STDERR "Original: $_" if $DEBUG; #from_to($_,"ANSI Latin1","utf8", Encode::FB_QUIET); # doppelte Rückcodierung erforderlich # siehe http://www.perl-community.de/bat/poard/thread/19290 from_to($_,"Windows-1252","utf8", Encode::FB_QUIET); from_to($_,"utf8", "UTF-8", Encode::FB_QUIET); print; }
perl Character_Change.pl < input.htm > output.html
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
#!/usr/bin/perl use strict; use warnings; use Encode qw/from_to/; my $DEBUG = 0; my ($file_from, $file_to) = @ARGV; die "Argumente fehlen!" if @ARGV < 2; open (my $fh_in, '<', $file_from) or die "$file_from - $!"; open (my $fh_out, '>', $file_to) or die "$file_to - $!"; while (my $line = <$fh_in>) { print STDERR "Original: $line" if $DEBUG; #from_to($line,"ANSI Latin1","utf8", Encode::FB_QUIET); # doppelte Rückcodierung erforderlich # siehe http://www.perl-community.de/bat/poard/thread/19290 from_to($line,"Windows-1252","utf8", Encode::FB_QUIET); from_to($line,"utf8", "UTF-8", Encode::FB_QUIET); print $fh_out $line; } close ($fh_in) or die "$file_from - $!"; close ($fh_out) or die "$file_to - $!";
Quoteperl Character_Change.pl < input.htm > output.html
prompt> dateiparser.pl datei01 datei02
print while <>; # Gibt den Inhalt beider Dateien aus (omitted: $_, ARGV)
2014-11-06T12:53:00 rostiQuoteperl Character_Change.pl < input.htm > output.html
Wenn Du hierzu @ARGV befragst, hast Du 4 Argumente.
2014-11-06T13:39:53 Raubtier2014-11-06T12:53:00 rostiQuoteperl Character_Change.pl < input.htm > output.html
Wenn Du hierzu @ARGV befragst, hast Du 4 Argumente.
Ich zähle hier 0.
Welche 4 Argumente sollen das sein?
2014-11-06T12:53:00 rostiDatei-Umleitungen werden nicht im Parameter-Array ARGV für Programme gespeichert, weder in C, noch in Perl oder gar sonstwo.Quoteperl Character_Change.pl < input.htm > output.html
Wenn Du hierzu @ARGV befragst, hast Du 4 Argumente.
2014-11-06T12:53:00 rostiÄh, wie watt? ARGV? Ein globales Dateihandle?Existieren die Dateien, findest Du im Perlcode das Handle ARGV und kannst die Inhalte beider Dateien z.B. aus <ARGV> lesen oder kurz und knapp über den Diamond-Operator <>:
QuoteARGV
The special filehandle that iterates over command-line filenames in @ARGV . Usually written as the null filehandle in the angle operator <>