Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/batch-file/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Windows 如何获取文本文件的每第三行,并使用批处理脚本将其放在单独的文本文件中_Windows_Batch File_Cmd - Fatal编程技术网

Windows 如何获取文本文件的每第三行,并使用批处理脚本将其放在单独的文本文件中

Windows 如何获取文本文件的每第三行,并使用批处理脚本将其放在单独的文本文件中,windows,batch-file,cmd,Windows,Batch File,Cmd,我只需要获得文本文件(Movie.txt)的每三行,并使用批处理脚本(for/f)将其放在单独的文本文件(Title.txt)中 Movie.txt Movie Title Anime1 Movie Title Anime2 Movie Title Anime3 Movie Title Anime4 Title.txt Anime1 Anime2 Anime3 Anime4 目前我不知道如何获得所需的数据。。。 如果您能提供任何帮助,我将不胜感激。谢谢。@E

我只需要获得文本文件(Movie.txt)的每三行,并使用批处理脚本(for/f)将其放在单独的文本文件(Title.txt)中

Movie.txt

 Movie
  Title
  Anime1
Movie
  Title
  Anime2
Movie
  Title
  Anime3
Movie
  Title
  Anime4
Title.txt

Anime1
Anime2
Anime3
Anime4
目前我不知道如何获得所需的数据。。。 如果您能提供任何帮助,我将不胜感激。谢谢。

@ECHO OFF
SETLOCAL
设置“line1=”
设置“line2=”
对于/f“tokens=1*delims=“%%a IN(
“findstr/r”。“100lines.txt”
)做(
如果定义了第1行(
如果定义了第2行(
回声%%a
设置“line1=”
设置“line2=”
)否则设置line2=y
)否则设置line1=y
)
后藤:EOF
您只需替换输入文件名—我有一个名为
100lines.txt
的文件,其中包含100行不同的文本

由于变量的当前定义状态作用于变量的运行时值,请确保清除两个标志以开始,然后针对文件的每一行

如果未定义
line1
,请将其设置为
否则,如果未定义
line2
,则将其设置为
否则我们就在
*3
行上,因此将其反流并清除两个标志。

@echo off
延迟扩展
设置输入=yourinput.txt
设置输出=youroutput.txt
集合i=0
对于/f“令牌=*”%%l,在(%input%)中执行(
set/a i=!i!+1
set/ar=!i!%%3
如果!r!==0 echo%%l>>%output%
)

我们可以使用模运算符和行计数器<代码>!我包含行号和
!r
是以3为模的行号。所以如果
!r==0
我们将行(
%%l
)写入输出文件。

看一看,我明天上班时会试试这个。。非常感谢。