通过批处理文件通过 psexec 窗口执行挂载命令

Posted

技术标签:

【中文标题】通过批处理文件通过 psexec 窗口执行挂载命令【英文标题】:Execute Mount commands via psexec window via batch file 【发布时间】:2012-03-28 23:14:22 【问题描述】:

我有一个 linux NFS,每次重新启动 Windows 时都会消失。

我需要运行一个计划任务以在启动时运行它来装载这些。

当我这样做时,我会运行以下命令(我必须通过 psexec 执行此操作):

    cd c:\temp psexec.exe -i -s cmd.exe 新窗口 (通常运行 whoami 以确保我已设置 NT AUTHORITY\system net use m: /persistent:yes UNIXSERVER01:/vol/vfile01_media/media net use m:/persistent:yes UNIXSERVER02:/vol/vfiler02_docs/docs

这是我的正常流程,但是我有点卡在创建一个批处理脚本,该脚本将从 psexec 运行文件。

谢谢!

【问题讨论】:

对不起,我知道 id 显然需要通过管道传递命令,不确定这是否真的可能!不幸的是,我是一个 unix 人! 想通了。 @echo off set path=c:\temp psexec -i -s net use M: /persistent:yes UNIXSERVER01:/vol/vfile01_media/media psexec -i -s net use H: /persistent:yes UNIXSERVER02:/vol/vfiler02_docs /docs 我发现我很愚蠢,因为我没有早点弄清楚。但这可能会在将来对某人有所帮助/ 【参考方案1】:

试试类似的东西

@ECHO OFF
PSEXEC /accepteula -u "NT_Authority/System" -i -s NET USE m: /persistent:yes UNIXSERVER01:/vol/vfile01_media/media
PSEXEC /accepteula -u "NT_Authority/System" -i -s NET USE m: /persistent:yes UNIXSERVER02:/vol/vfiler02_docs/docs

希望对您有所帮助,如果您想获得真正精确的信息,可以通过管道输出

@ECHO OFF
WHOAMI >C:\whoami.txt

并尝试找到一个 for /f 循环来将输出解析为 IF 语句。

【讨论】:

以上是关于通过批处理文件通过 psexec 窗口执行挂载命令的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 PsExec 执行远程命令

PSEXEC 通过命令提示符成功运行,但在 ASP .Net/C# 中失败

MSF实现RID劫持和MSF实现PsExec执行命令

使用PSExec与本地管理员提示访问被拒绝

JVM内存溢出环境备份方法

PSEXEC...DTEXEC 错误 128