【发布时间】:2014-10-29 21:44:02
【问题描述】:
这是我正在尝试的代码。它只会创建最后一行。所以我猜其他文件正在被覆盖,尽管我试图移动它们但没有奏效?
for /f "usebackq tokens=1-8 delims=," %%a in ("chassisinfo.csv") do (
set hostname=%%a
set FQDN=%%b
set MGMT=%%c
set SUB=%%d
set gw=%%e
set dns=%%f
set vlan=%%g
echo # Seans scripted installation file > ks_%hostname%.cfg
echo # >> ks_%hostname%.cfg
echo # Accept the VMware End User License Agreement >> ks_%hostname%.cfg
echo vmaccepteula >> ks_%hostname%.cfg
echo # Set the root password for the DCUI and Tech Support Mode >> ks_%hostname%.cfg
echo rootpw >> ks_%hostname%.cfg
echo # The install media is in the CD-ROM drive >> ks_%hostname%.cfg
echo install --firstdisk --overwritevmfs >> ks_%hostname%.cfg
echo keyboard 'United Kingdom' >> ks_%hostname%.cfg
echo network --bootproto=static --device=vmnic0 --ip=%MGMT% --netmask=%SUB% --gateway=%gw% --nameserver=%dns% --vlanid=%vlan% --hostname=%hostname%%FQDN% >> ks_%hostname%.cfg
move ks_%hostname%.cfg d:\KSscripts\
)
【问题讨论】:
-
请解释您希望它做什么,以及它会做什么。我们不是心灵感应器
-
它是一个脚本,用于为 CSV 的每一行创建一个 CFG 文件。 cfg 文件由 A 列(主机名)命名。每列都有我在脚本的不同部分使用的不同属性。这做了我想要它做的事情并创建脚本,但仅适用于 CSV 文件中的最后一行。我不知道为什么它会跳过其余的行。尽管我希望它跳过 CSV 的第一行,因为那是标题/标题所在的位置,而不是数据所在的位置。希望更清楚。
标签: batch-file batch-processing batch-rename