Я бился головой об ту же стену в течение 48 часов.Как передать аргумент командной строки в Perl, чтобы, когда у Perl была возможность открыть файл, он правильно обрабатывал пространства в стиле Windows, которые встречаются в каталогах a) или b) имен файлов:
# open( PRELIM, "\"$ifile\"") or die "Cannot open $ifile";
# open( PRELIM, '\"$ifile\"') or die "Cannot open $ifile";
## Both these lines cannot deal with a space present in the path:
# open PRELIM, $ifile or print "\n* Couldn't open ${ifile}\n\n" && return;
# $ifile = qq($ifile); Doesn't help, still leaves the file as if it was 'two' files
#
# Quotes around $ifile do no good either
open( PRELIM, $ifile) or die "Cannot open $ifile"
Как правило, приведенная выше строка верна до тех пор, пока в переменной '$ ifile' не будет пробела.