首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >windows 7不生成txt报告

windows 7不生成txt报告
EN

Stack Overflow用户
提问于 2014-07-13 06:23:03
回答 2查看 95关注 0票数 0

我想用我的dns历史记录生成一个txt文件。虽然批处理脚本在Windows8上执行得很好,但当我在Windows7上运行它时,它只是创建了一个空白的txt文件。有人知道为什么会发生这种情况吗?

以下是批处理脚本

代码语言:javascript
复制
@echo off

    setlocal enableextensions

    set "baseName=dnshistory"

    set "count=0"
    for /f "delims=%baseName%." %%a in (
        'dir /b /o-d "%baseName%*.txt" 2^>nul'
    ) do ( set /a "count=%%a+1" & goto saveData )

:saveData
    ipconfig /displaydns | find "Record Name" > "%baseName%%count%.txt"
EN

回答 2

Stack Overflow用户

发布于 2014-07-13 10:11:30

你的Windows7版本也是英文的吗?

打开CMD窗口,只测试以下命令:

代码语言:javascript
复制
ipconfig /displaydns | find /i "Record Name"

看看有没有什么东西显示出来。

如果没有,只尝试执行以下命令:

代码语言:javascript
复制
ipconfig /displaydns

并查看所使用的语言,然后使用正确的单词更正代码。

在葡萄牙语中是:

代码语言:javascript
复制
ipconfig /displaydns | find /i "Nome do Registro"
票数 1
EN

Stack Overflow用户

发布于 2014-07-13 15:04:18

尝试以下与语言无关的解决方案:

代码语言:javascript
复制
:saveData
(for /f "tokens=2 delims=:" %%a in ('ipconfig /displaydns') do (
  echo %%a| find "." |findstr /v /r "[0-9]$"
))>file.txt

(取每一行,过滤那些在: (第二个标记)后有.的行,并过滤掉所有以数字结尾的行)

另一种方法(因为上面给出了一些不需要的行):

查找每个-----------------行之后的第一行:

代码语言:javascript
复制
@echo off
setlocal enabledelayedexpansion
ipconfig /displaydns |findstr /n "^" >a.txt
for /f "tokens=1 delims=:" %%a in ('findstr /c:"    --------------" a.txt') do (
  set /a line=%%a+1
  for /f "tokens=1,2,* delims=:" %%i in ('findstr /B "!line!:" a.txt') do echo(%%k 
)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24717850

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档