阅读HELP FOR
然后在命令提示符下尝试
FOR /F "delims=" %a in (input.txt) do @echo 127.0.0.1 %a >>output.txt
这是一些解释和一些注意事项,以使用更完整的功能对其进行扩展并将其放入 BAT 文件中
FOR 是遍历输入文本文件行的命令。在http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/for.mspx阅读微软文档
input.txt
是包含您的域名列表的文本文件,它必须位于当前目录中
output.txt
将是包含前缀为 127.0.0.1 的域名列表的结果文件,它将在当前目录中创建
如果要创建 BAT 文件,则需要移动 FOR 命令并稍作编辑,将%a
循环变量名称更改为%%a
.
然后,您可以将 BAT 文件放在当前目录中,即您的输入所在的位置以及将创建输出的位置。
或者,您可以将 BAT 文件放在其他地方。在这种情况下,您需要使用其完整路径调用它。
或者你甚至可以将它放在一个特殊的目录中(我有我自己的C:\Program Files\CMD
)并将它添加到 PATH 系统变量中。请参阅此处 www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/path.mspx?mfr=true 如何更改当前会话的 PATH。在这里 ss64.com/nt/path.html 您可能会找到一些关于如何使 PATH 永久更改的解释。
此外,您可能想为您的 BAT 文件添加一些灵活性,而不是使用常量input.txt
和output.txt
文件名,而是将它们替换为 BAT 文件的第一个%1
和%2
第二个命令行参数。
然后,用户可能想要使用文件名中包含空格的文件。他们可能会在名称周围用引号指定它们"
。在这种情况下,您需要usebackq
在 FOR 命令中添加一些咒语,以免在用户使用引号时造成破坏。
最后,您需要决定在输出文本文件已经存在的情况下该怎么做,您可能需要考虑防止覆盖。
因此,将所有这些部分放在一起,这是一个简短的 BAT 文件,可以帮助您入门……
@echo off
if .%2==. goto help
if not exist %1 goto helpno1
if exist %2 goto helpalready2
FOR /F "usebackq delims=" %%a in (%1) do @echo 127.0.0.1 %%a >>%2
goto :eof
:help
echo you need to specify input and output text files
goto :eof
:helpno1
echo %1 not found
goto :eof
:helpalready2
echo %2 already exist
goto :eof
欢迎来到BAT编程并享受!