我是一位很長時間的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