Thread qx und Apostrophen im Dateinamen (6 answers)
Opened by crayfish at 2015-07-06 00:10

guest crayfish
 2015-07-06 09:41
#181489 #181489
Hallo GwenDragon, Vielen Dank für die Antwort!

Ich habe _fast_ die Lösung, aber nur fast! Also, das mit den Double Quotes habe ich natürlich probiert, genauso wie viele andere Kombinationen, mit ', oder "\", oder "\', oder ...

Egal, jedenfalls habe ich gerade bemerkt, dass es an daran liegt, dass manche der Dateinamen ein Apostroph ' beinhalten. Z.B:

Frank O'Donnell kauft Pelze.txt

Sobald ich das ' rausnehme, funktioniert es! Wie schaffe ich es aber, die Hochkommas drin zu lassen, und trotzdem die Datei zu öffnen.

Übrigens:
Code: (dl )
my @txt = qx(dir /B *.txt);

funktioniert so, auch ohne Double Quotes. Vielleicht liegt es auch an meiner Umgebung.
Ich poste hier noch einmal den gesamten Quelltext, ich habe da am Anfang so ein "binmode" Statement, ich glaube, das war wegen der Umlaute (die auch in einigen Dateinamen und in der Datei selbst enthalten sind), vielleicht mache ich da was falsch.

Sorry falls da Unsinn steht, habe Perl zum letzten Mal vor 10 Jahren angefasst, und selbst damals war ich alles andere als ein Perl-Profi!

Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#!/usr/bin/perl -w
use warnings;
use strict;
binmode(STDOUT , ":encoding(cp437)" );

my @txt = qx(dir /B *.txt);

foreach (@txt) {
chomp $_;
my $ctxtf = qx(type $_);
$ctxtf =~ /.*\x{00f8}(1?[0-9])\. findewort.*/;
print "\n==> Ergebnis: ".$1."\n";

}


Any help appreciated!

Fish
Last edited: 2015-07-06 09:52:16 +0200 (CEST)

View full thread qx und Apostrophen im Dateinamen