Soy un usuario de Linux desde hace mucho tiempo, pero soy nuevo en Windows y PowerShell. Acabo de instalar Windows7 y Strawberry Perl 5 por primera vez. Ahora quiero hacer una impresión simple de línea de comandos con Windows PowerShell.¿Por qué PowerShell (con Perl) elimina las comillas dobles en una simple declaración de impresión?
Parece que Perl instalado correctamente:
PS C:\Users\Me> perl -v This is perl, v5.10.0 built for MSWin32-x86-multi-thread Copyright 1987-2007, Larry Wall ...
y cosas de línea de comandos funciona:
PS C:\Users\Me> perl -e 'die' Died at -e line 1. PS C:\Users\Me> echo 'print "Hello, World\n"' | perl Hello, World
Pero cuando lo intento por sí mismo muestra una advertencia FileHandler:
PS C:\Users\Me> perl -e 'print "Hello, World\n"' No comma allowed after filehandle at -e line 1.
Parece que eliminar las comillas dobles.
PS C:\Users\Me> perl -e 'print \"Hello, World\n\"' Hello, World
Eso funciona pero es feo! Vamos a intentarlo de nuevo:
PS C:\Users\Me> perl -e 'print qq{Hello, World\n}' Hello, World
Eso es más como él, pero estoy confundido.
¿Por qué PowerShell está escapando de las comillas dobles dentro de las comillas simples? ¿Hay usuarios de PowerShell por ahí?
¿Has probado 'perl -e" print 'Hello, World' "'? – Weegee