Я давний пользователь Linux, но плохо знаком с Windows и PowerShell. Я только что впервые установил Windows7 и Strawberry Perl 5. Теперь я хочу выполнить простую печать из командной строки с помощью Windows PowerShell.
Похоже, Perl установлен правильно:
PS C:\Users\Me> perl -v This is perl, v5.10.0 built for MSWin32-x86-multi-thread Copyright 1987-2007, Larry Wall ...
И командная строка работает:
PS C:\Users\Me> perl -e 'die' Died at -e line 1. PS C:\Users\Me> echo 'print "Hello, World\n"' | perl Hello, World
Но когда я пробую все это само по себе, он выводит предупреждение обработчика файлов:
PS C:\Users\Me> perl -e 'print "Hello, World\n"' No comma allowed after filehandle at -e line 1.
Таким образом, похоже, что двойные кавычки удаляются.
PS C:\Users\Me> perl -e 'print \"Hello, World\n\"' Hello, World
Это работает, но это некрасиво! Давай еще раз попробуем:
PS C:\Users\Me> perl -e 'print qq{Hello, World\n}' Hello, World
Это больше похоже на то, но я запутался.
Почему PowerShell избегает двойных кавычек внутри одинарных? Есть ли пользователи PowerShell?
perl -e "print 'Hello, World'"
? - person Weegee   schedule 11.08.2009