Почему Perl не видит мой файл в рабочем каталоге Windows?

Я использую текущую версию Strawberry Perl и Windows Server 2008.

По какой-то причине Perl не находит файлы в текущем рабочем каталоге:

F:\temp\hackr\e>ls
test.csv      train.csv

F:\temp\hackr\e>perl -ne 'print if (rand() < .01)' train.csv
The system cannot find the file specified.

person Hack-R    schedule 21.04.2016    source источник
comment
Вы уверены, что он находит perl?   -  person simbabque    schedule 21.04.2016
comment
@simbabque Хороший вопрос. Когда я просто набираю perl и ввожу, ошибки нет. Он опускает строку в ожидании дальнейших команд. Так что я думаю, что он находит perl.   -  person Hack-R    schedule 21.04.2016


Ответы (1)


В командной строке Windows используйте двойные кавычки для аргументов командной строки, которые необходимо заключать в кавычки.

perl -ne "print if (rand() < .01)" train.csv
person mob    schedule 21.04.2016
comment
@ Hack-R: Linux будет принимать двойные или одинарные кавычки в командной строке (с разным поведением), но Windows настаивает на двойных кавычках. - person Borodin; 21.04.2016