私は長年の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