当我运行我的批处理文件以通过一大堆IP并获得一些信息如果可以连接到远程cmd时,它不起作用。
如果它无法连接echo
不起作用,如果它连接,它会打开远程命令shell,并且在我退回到本地命令shell之前什么都不做。
cd \pstools
psexec.exe @C:\users\chargraves\desktop\inv.txt cmd /c
if errorlevel 0 (
wmic csproduct get version >> \\path\results.txt &
)
if errorlevel 1(
echo "Not accessible"
)
我也开始尝试使用PowerShell。但是只要它进入远程命令shell,它就会挂起。 IT没有输入wmic代码......“
$computers = Get-Content C:\users\chargraves\Desktop\inv.txt
foreach ($computer in $computers) {
& "c:\pstools\psexec.exe" \\$computer "cmd"
& "wmic csproduct get version >> \\share\results.txt"
}
答案 0 :(得分:0)
试试这段代码
cd \pstools
psexec.exe @C:\users\chargraves\desktop\inv.txt cmd /c
if %errorlevel%==1 goto fail
REM if errorlevel is 0 then it executes these lines
wmic csproduct get version >> \\path\results.txt
:fail
REM if errorlevel is 1 then it executes the lines bellow
echo "Not Accesible"
ping localhost -n 2 >nul
答案 1 :(得分:0)
我能够让它成功运作并且复杂得多。谢谢。
批次1
cd \pstools
psexec.exe @iplist.txt -c batch2.bat
批次2
wmic command 1 >> results.txt
wmic command 2 >> results.txt
wmic command 3 >> results.txt