我已经尝试创建此脚本-
它没有按我的需要循环播放。似乎只在抓取文件的最后一行?
我有一个文本文件,其中包含多个计算机名称,每行一个...我需要将第1行设置为变量,回显该行,然后运行一行代码,然后将第2行设置为变量,回显该行,然后运行代码,然后遍历其余部分,并在所有行结束时显示“完成” ...
感谢您的协助。我已经搜索了Stack Overflow,发现了类似的问题并给出了答案,但由于我希望它们起作用,所以没有一个起作用。
@Echo off
SETLOCAL ENABLEDELAYEDEXPANSION
for /f "tokens=*" %%f in (computernames.txt) do (
set compname=%%f
echo !compname!
)
echo %compname%
REG ADD "\\%compname%\HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server" /v "fDenyTSConnections" /t REG_DWORD /d 0 /f
pause
答案 0 :(得分:3)
您的脚本的确捕获了文件中的每一行,但是您仅在循环结束时才回显结果(因此仅最后一行)。
首先,在循环内回显%%f
以查看所有计算机名称。
然后,您还必须在循环内移动注册表代码。您可以只使用%%f
。
@Echo off
for /f "tokens=*" %%f in (computernames.txt) do (
echo %%f
REG ADD "\\%%f\HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server" /v "fDenyTSConnections" /t REG_DWORD /d 0 /f
)