为什么input redirection未在PowerShell中实现?
做这样的事情:
mysql -u root < create.sql
我不得不切换到“cmd.exe”。
在PowerShell中有替代方法吗?
请注意输出重定向“&gt;”在PowerShell中实现。在给出答案之前请考虑这个。
答案 0 :(得分:11)
虽然我不完全确定这个问题属于Stack Overflow,但您是否看过{Cmdlet for Get-Content?看看它在 Using the Get-Content Cmdlet 中的TechNet示例中的用法。
示例:
Get-Content c:\scripts\test.txt | Foreach-Object {Get-Wmiobject -computername $_ win32_bios}
更新:以上指向TechNet的链接已损坏,但Chad Miller Scripting Guy的帖子 Working Around Legacy Redirection Issues with PowerShell 在评论中提到了三个选项: - use CMD /c
,Echo
和Get-Content。
答案 1 :(得分:1)
我不认为MySQL会接受用它传输的PowerShell对象 - 正如Stephan所说,你可以使用Get-Content并将其传递给下一个命令。
查看Stack Overflow问题 Is PowerShell ready to replace my Cygwin shell on Windows? ,了解他们没有复制Unix shell的原因。