在 powershell (2.0) 中,以下操作运行良好: cmd /c echo "hello" | select-string hello
输出“你好”。
在远程模式下运行时,不会打印文本:
Invoke-Command -ComputerName myserver -Credential [email protected] { cmd /c echo "hello" | select-string hello }
为什么以及如何在远程模式下 grep 命令(exefiles)的文本?(客户端上是 windows7,服务器上是 2008r2。命令可以正常运行,端口已打开,等等)
答案1
你不想做吗:
Invoke-Command -ComputerName localhost { cmd /c echo "hello"} | select-string "hello"
答案2
的输出Select-String
不是字符串,而是MatchInfo
,无法通过Invoke-Command
连接返回。
只需将结果通过管道传输Select-String
到Out-String
,您就会得到输出〜:
Invoke-Command -ComputerName myserver -Credential [email protected]
{ cmd /c echo "hello" | select-string hello | out-string }