从服务器到客户端的 WMIC 文件复制失败

从服务器到客户端的 WMIC 文件复制失败

我尝试从服务器运行以下命令,但最终没有成功。我尝试做的是将文件从服务器的 c$ 复制到特定客户端。

10.10.10.10(服务器)

10.10.10.100(客户端)

不工作

wmic /node:10.10.10.100 /USER:"[email protected]" /PASSWORD:"ppaass" process call create "XCOPY /Y \\10.10.10.10\c$\script\a.txt c:\a.txt*"

命令提示符中的结果

Executing (Win32_Process)->Create()
Method execution successful.
Out Parameters:
instance of __PARAMETERS
{
        ProcessId = 1132;
        ReturnValue = 0;
};

WORKING 命令

wmic /node:10.10.10.100 /USER:"[email protected]" /PASSWORD:"ppaass" process call create "cmd.exe /c 'type c:\a.txt > c:\b.txt"

第一个命令可能有什么错误?

答案1

非工作版本的“结果”实际上告诉您事情确实有效(返回代码 0 表示“成功”)。但它只告诉您“进程调用创建”调用有效。

报告说它正在运行您的进程,因此很可能您调用的命令(XCopy)由于某种原因失败了。

我的猜测是,用于在客户端上启动该过程的用户无权访问c$服务器上的管理员共享 ()。或者是因为您尝试将文件复制到 C: 的根目录中,这在 XP 以上的 Windows 版本中通常是不允许的。

要调试,请以您尝试用来启动命令的用户身份登录客户端,在命令提示符中手动运行它,并记录结果/错误消息。

和/或扩展您尝试通过 WMI 触发的命令,以包括将 StdOut 和 StdErr 输出流重定向到文件。例如:

XCOPY /Y \\10.10.10.10\c$\script\a.txt c:\a.txt 1> c:\output.txt 2>&1

然后检查的output.txt内容。

(再次强调,与本例中所写不同,尽量避免使用 C: 的根目录来保存文件,创建文件夹并将内容放在那里)。

相关内容