2011-07-20 12 views
24

¿Por qué input redirection no está implementado en PowerShell?¿Por qué la redirección de entrada "<" no está implementada en PowerShell?

Para hacer algo como esto:

mysql -u root < create.sql 

tuve que cambiar a "cmd.exe".

¿Hay una forma alternativa de hacer esto en PowerShell?

Tenga en cuenta que la redirección de salida ">" se implementa en PowerShell. Por favor considere esto antes de dar una respuesta.

+2

Dado que le dio a la tubería un script para 'mysql' como su ejemplo, pensé que debería [señalarlo] (http://stackoverflow.com/questions/6365191/import-large-mysql-sql-file- on-windows-with-force/6365553 # 6365553) en caso de que intente utilizar Powershell para canalizar una copia de seguridad. –

+0

Eso es exactamente lo que estaba buscando. Por supuesto, no es la mejor solución, pero es un buen truco, sin tener que volver al DOS-prompt. – drozzy

+0

Un año y medio después, todavía no tengo una respuesta a esta pregunta específica de por qué la redirección de entrada no se implementó. –

Respuesta

10

Aunque no estoy del todo seguro de que esta pregunta pertenezca a Stack Overflow, ¿ha mirado el cmdlet de PS para Get-Content? Mire cómo se usa en los ejemplos en TechNet en Using the Get-Content Cmdlet.

Ejemplo:

Get-Content c:\scripts\test.txt | Foreach-Object {Get-Wmiobject -computername $_ win32_bios} 

Actualización: Por encima de enlace a TechNet se rompe, pero se menciona en el comentario por correo de Chad Miller del scripting Working Around Legacy Redirection Issues with PowerShell da tres opciones: - use CMD /c, Echo, y Get-Content.

+1

Eso parece al revés :-( – drozzy

+6

La redirección se cubrió en una publicación de Scripting Guys usando Get-Content http://blogs.technet.com/b/heyscriptingguy/archive/2011/07/16/working-around-legacy-redirection- issues-with-powershell.aspx –

+2

@Chad Miller, Oh, por supuesto, ese sería el lugar obvio para que un usuario de PowerShell se mire!/final-sarcasmo. Gracias. – drozzy

1

No creo que MySQL acepte los objetos de PowerShell conectados a él, pero como Stephan dice, podría usar Get-Content y canalizarlo al próximo comando.

Revise la pregunta sobre el desbordamiento de la pila Is PowerShell ready to replace my Cygwin shell on Windows? por los motivos de por qué no han copiado los proyectores Unix.

+0

Lo sentimos, pero ¿dónde hay razones? Parece que solo son comparaciones. .. – drozzy

+0

¿Has leído el comentario de Jeffery Snover? Habla sobre las razones. – Matt

+0

No veo razones en particular sobre los redireccionamientos de entrada, y realmente no estoy interesado en las herramientas Unix vs Windows. muy curioso acerca de una herramienta en particular. ¡Después de todo, se implementa la redirección de salida ">"! – drozzy

Cuestiones relacionadas