我是一位很长时间的Linux用户,但对Windows和PowerShell来说是新手。我第一次安装了Windows7和Strawberry Perl 5。我现在想用Windows PowerShell进行简单的命令行打印。PowerShell(带Perl)为什么在简单的打印语句中删除双引号?
看起来正确安装的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
但是当我尝试它所有的本身它打印的FileHandler警告:
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'”'? – Weegee 2009-08-10 23:21:36