텍스트 파일에서 IP 주소로 DNS를 확인합니다.

텍스트 파일에서 IP 주소로 DNS를 확인합니다.

현재 아래 표시된 첫 번째 명령을 사용하여 DNS 서버에서 IP 주소를 가져올 수 있습니다. 그러나 한 번에 하나의 DNS 서버를 입력하고 명령을 실행하는 것은 지루한 작업입니다. 나는 과거에 이것을 실행하려고 시도했고 for /F %i in (dns.txt); do nslookup %i; > ips.txt;작동했습니다. 그러나 아래 명령에도 동일한 개념을 적용하려고 합니다. 텍스트 파일에서 DNS 주소를 확인하고, IP ​​주소를 변환하고, 결과를 새 텍스트 파일로 출력하려면 어떻게 해야 합니까?

1개의 DNS-IP 주소에만 작동합니다.

for /f "skip=4 usebackq tokens=2" %a in (`nslookup somedns.com`) do echo %a  > ips.txt

답변1

아무래도 운영자 의 실수인 ​​것 같습니다 >. 이렇게 하면 실제로 파일이 잘리고 출력이 파일에 기록되지만 ips.txt루프에 빠져 매번 파일이 잘립니다. 대신 연산자 를 사용해 보세요 >>.

for /f "skip=4 usebackq tokens=2" %a in (`nslookup somedns.com`) do echo %a >> ips.txt

편집하다: 파일을 반복하여 각 DNS 호스트의 IP 주소를 얻으려면 다음과 같이 하면 됩니다.

for /f "tokens=*" %%A in (yourhostsfile.txt) do nslookup %%A >> ips.txt

관련 정보