psexec双反斜杠错误

时间:2013-01-31 04:49:22

标签: powershell psexec

我试图在电源shell中运行以下命令,但它一直给我错误的双反斜杠字符..我该怎么办!!我看到其他论坛,这个yntax对他们来说很好!

$combined="C:\tools\PsExec.exe \\computer cmd.exe"
PS C:\Users\Desktop\initialutility\initutil_v2> Invoke-Expression $combined

At :line:1 char:20
+ C:\tools\PsExec.exe  <<<< \\computer cmd.exe

我用\ x.x.x.x(即IP地址)代替\计算机..仍然没有用.. 请帮忙!

1 个答案:

答案 0 :(得分:1)

我认为你的问题存在于其他地方,因为双斜线工作得很好,例如:

PS> $command = "c:\bin\psexec.exe \\genericpc1 hostname.exe"
PS> iex $command

PsExec v1.98 - Execute processes remotely
Copyright (C) 2001-2010 Mark Russinovich
Sysinternals - www.sysinternals.com


GENERICPC1
hostname.exe exited on genericpc1 with error code 0.

我会尝试在Invoke-Expression的上下文之外运行psexec.exe并首先运行它。使用psexec的另一个问题是,如果您未指定任何凭据,它将使用您的凭据。这意味着,您的凭据需要在远程系统上工作。

来自article on PsExec的其他要求是:

  

PsExec远程运行进程的能力要求两者都有   本地和远程计算机具有文件和打印共享(即,   工作站和服务器服务)启用并默认为Admin $   共享(映射到\ windows目录的隐藏共享)已定义   在远程系统上。

     

...冒充您在本地运行PsExec的帐户   系统。从版权的角度来看,假冒行为有所限制   安全性 - 远程进程无权访问任何网络   资源,甚至是您的帐户通常可以使用的资源   访问。如果您运行的帐户没有本地帐户   远程系统上的管理权限,即您想要的进程   要运行需要访问网络资源,或者您想要运行   在另一个帐户中处理,然后使用PsExec的-u开关提供   另一个帐户名称。   共享(映射到\ windows目录的隐藏共享)已定义   在远程系统上。