Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/batch-file/6.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/powerbi/2.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
Batch file 怎么用?创建在txt文件中查找文本的批处理文件+;然后再细分>&燃气轮机;concats到1 output.txt。。请参阅迄今为止的代码_Batch File - Fatal编程技术网

Batch file 怎么用?创建在txt文件中查找文本的批处理文件+;然后再细分>&燃气轮机;concats到1 output.txt。。请参阅迄今为止的代码

Batch file 怎么用?创建在txt文件中查找文本的批处理文件+;然后再细分>&燃气轮机;concats到1 output.txt。。请参阅迄今为止的代码,batch-file,Batch File,1谢谢你检查这个 下面的批处理文件(findit.bat)用于在单个目录中查找字符串变量 for %%a in (C:\myDir\*.txt) do find "%1" >> %%a >> output.txt 命令提示符中的示例: c:> findit someword 所有包含“someword”的文件都会写入>output.txt 问题是:如何让这个包含子目录? 我已尝试添加/s开关(C:\myDir/s) 但那是行不通的。它位于\Mydir的根目录中:

1谢谢你检查这个 下面的批处理文件(findit.bat)用于在单个目录中查找字符串变量

for %%a in (C:\myDir\*.txt) do find "%1" >> %%a >> output.txt
命令提示符中的示例:

c:> findit someword
所有包含“someword”的文件都会写入>output.txt

问题是:如何让这个包含子目录? 我已尝试添加/s开关(C:\myDir/s) 但那是行不通的。它位于\Mydir的根目录中:( 有什么想法吗? 永远; 后藤一号,
完成之前:)

根据Windows帮助,FOR命令支持/R开关递归到子目录:

对于(C:\myDir\*.txt)中的/R%%a,请找到“%1”%%a>>output.txt

编辑:更正了find命令的用法


唯一的缺点是,如果output.txt是在c:\myDir

中创建的,那么它也会在output.txt中搜索,您还没有包括findit.bat。这是无意的吗?对不起,这是我第一次在这个论坛上。这是findit.bat-对于(C:\myDir*.txt)中的%%a,请查找“%1”>>%%a>>output.txt notepad output.txt谢谢,但输出仍然针对根目录。我做了一个c:>为/?>for.txt和notepadded它以从DOS的口中获得帮助,并且它同意/R开关应该工作。回到1:我认为你使用find是错误的。您在find命令中只使用了%1。您没有向它传递文件名,所以我想应该是:find“%1”%%a>>output.txt?使用(*.txt)中的“for/R%%a”do echo“%%a”对我有效(显示所有子目录中的所有文本文件)是的,它返回所有子目录中文本文件的名称,但不返回删除/R开关时在%1中指定的文本文件的内容。我在c:\myDir/s*.txt之后添加了/s开关,该开关只查找搜索字符串的一个匹配项。在享受了手工搅拌混凝土的乐趣之后,我将在明天继续努力。我宁愿和DOS战斗。。将再次更新:您使用的find命令是错误的。我更改了我的示例代码,以更正您更改的示例在将目录和文件名回显到屏幕上时非常有效。我的第一个示例非常适合输出包含搜索字符串变量%1的任何查找结果的文本文件。这没有什么“错”。我只想在子目录上执行相同的函数,并将其输出到文件中。右/右开关不工作。这就是我要问的。