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
Windows 在批处理文件中添加之前和之后的内容_Windows_Batch File - Fatal编程技术网

Windows 在批处理文件中添加之前和之后的内容

Windows 在批处理文件中添加之前和之后的内容,windows,batch-file,Windows,Batch File,我希望批处理脚本的代码基于一个文本文件编辑Del.bat,我们称之为removelist.txt name 1 NaMe 2 Name3 Name 4 name 5 name 6 因此,我希望edit.bat创建del.bat,从removelist.txt获取输入,并将其置于底部的格式中 Removelist.txt name 1 NaMe 2 Name3 Name 4 name 5 name 6 然后基于这个Removelist.txt内容,我希望它创建Del.bat Del.bat将始

我希望批处理脚本的代码基于一个文本文件编辑Del.bat,我们称之为removelist.txt

name 1
NaMe 2
Name3
Name 4
name 5
name 6
因此,我希望edit.bat创建del.bat,从removelist.txt获取输入,并将其置于底部的格式中

Removelist.txt

name 1
NaMe 2
Name3
Name 4
name 5
name 6
然后基于这个Removelist.txt内容,我希望它创建Del.bat Del.bat将始终将类型%dp0\input.txt作为输入,将%dp0\output.log作为输出 所以我希望它在处理后看起来像这样

 type %~dp0\input | findstr /v "name 1" | findstr /v "NaMe 2" | findstr /v "Name3" | findstr /v "Name 4" | findstr /v "name 5" | findstr /v "name 6" > %~dp0\output.log" 
这将创建一个庞大的删除单词列表,预计可能有500多个单词/v xxxxx

尝试以下操作:

@echo off
setlocal
set "write=<nul set/p"
(%write%=type "%~dp0input"

for /f %%a in (removelist.txt) do (
    %write%= ^|Findstr /v "%%a" 
)
echo(^> "%~dp0output.log"
)>del.bat
这并不是最基本的。它使用set/p技巧将所有文本连接到同一行

DEL.bat是一个非常糟糕的名字,因为DEL是一个CMD内部关键字

FINDSTR /L /v /g:removelist.txt input >output.log

这是您所需要的全部-我将让您修复文件名。

好的。你的问题是什么?我想知道我将在批处理文件中使用什么代码来实现上述事情。我想要一个批处理文件,以使用我提到的标准生成另一个批处理文件。然后,在这里发布您的帖子并问一个特定的问题。你已经声明了你想要什么,但这是一个问答网站。你必须先问一个问题才能得到答案。您想做的具体部分中有哪些困难需要我们帮助您解决?我根本不知道该怎么做,我对批处理文本操作的经验很少。