我在Windows7系统上使用Jenkins。我想用它在远程Windows系统上执行批处理脚本。批处理脚本将用于刷新开发板并运行一些测试。我碰到psexec.exe。通过命令提示符窗口可以很好地工作- 我可以连接并运行脚本而没有任何问题,但是当我尝试让Jenkins进行操作时,我得到以下输出:
PsExec v2.11 - Execute processes remotely Copyright (C) 2001-2014 Mark Russinovich Sysinternals - www.sysinternals.com The handle is invalid. Connecting to ABCDEFG... Couldn't access ABCDEFG: Connecting to ABCDEFG... Build step 'Execute Windows batch command' marked build as failure
我在两种情况下都使用的命令是:psexec.exe \\ ABCDEFG -u“ DOMAIN \ username” -p“ password”“ C:\ test.bat”
与用户名关联的用户在远程系统上具有管理员特权(ABCDEFG不是系统的真实名称)。
谁能帮助我找出为什么它无法通过詹金斯工作吗?或者,是否有更简便/更好的方法通过Jenkins在远程Windows系统上执行批处理脚本?
感谢您的所有帮助,尤其是Technext,我有一个解决方案。
我需要运行“ services.msc”,找到“ Jenkins”,右键单击它,然后转到“属性”。一旦出现属性窗口,我必须单击“停止”按钮以停止Jenkins,打开“登录”选项卡,输入我的用户名和密码(在命令提示符下运行时使用的用户名),然后再次启动Jenkins。詹金斯摆脱了“处理无效”消息。
更新:更好的解决方案是进入我使用psexec.exe进入的系统,进入控制面板>用户帐户>授予其他用户对此计算机的访问权限。单击“添加…”,然后输入用户名和Jenkins用于运行其命令的域(要找到此名称,请在浏览器窗口中打开您的Jenkins,转到“管理Jenkins”>“系统信息”,然后在“环境变量”下查找USERNAME和USERDOMAIN) )。确保您授予它管理员权限。然后单击确定。现在psexec.exe不应出现“句柄无效”的问题。