Я хочу, чтобы командный файл извлекал информацию из первой строки текстового файла (блокнота), использовал эту информацию для добавления информации на DNS-сервер, а затем удалял ее. Я думаю, что если я создам цикл, я могу заставить его пройти весь текстовый файл, используя первую строку информации для добавления к DNS-серверу, а затем удалив первую строку перед запуском цикла. Например ... Пакетный файл будет
@echo off
:start
dnscmd "mydns" /zoneadd (need to know the command from here to add the FQDN from the text file)
::(Need to know the command here to delete the first line of the text file and save the file)
goto start
Текстовый файл гласит
Siteno1.com
Siteno2.com
Siteno3.com
Я хочу добавить Siteno1.com
в DNS, затем удалите его, начните с начала текстового файла и добавьте Siteno2.com
в DNS, удалите его и снова начните с начала, пока текстовый файл не станет пустым.
В нем нет встроенного примитива CMD.EXE
для удаления строк из текстовых файлов. Я подозреваю, что вы найдете полезность в for
команда.
@echo off
for /f %%i in (textfile.txt) do echo dmscmd "mydns" /zoneadd %%i
Это будет повторять все строки в textfile.txt
отображение примера dnscmd
командная строка для каждой строки файла. (Очевидно, удалите echo
чтобы он действительно выполнял команды).
Синтаксис для for
несколько загадочно. Когда вы используете for
в простой командной строке вы не удваиваете %%
переменные среды. я нахожу for
чтобы быть невероятно удобным и использовать его ежедневно (но, кстати, я тоже ежедневно использую командную строку).