Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/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
Windows 复制特定字符串为非零的文件批处理_Windows_Logging_Batch File - Fatal编程技术网

Windows 复制特定字符串为非零的文件批处理

Windows 复制特定字符串为非零的文件批处理,windows,logging,batch-file,Windows,Logging,Batch File,我正在尝试将所有在某个字符串上具有非零值(可以在不同的行中)的日志复制到文件夹中。现在我需要一个批处理文件,它可以基于一个设置的值进行复制,我希望它可以被复制为任何非零值。我需要修改什么才能只复制非零的文件。可能将字符串设置为搜索零“错误0”,如果找到,则不复制 setlocal enabledelayedexpansion for %%a in (*.LOG) do ( set found=false for /f "skip=2 tokens=*" %%b in ('find "

我正在尝试将所有在某个字符串上具有非零值(可以在不同的行中)的日志复制到文件夹中。现在我需要一个批处理文件,它可以基于一个设置的值进行复制,我希望它可以被复制为任何非零值。我需要修改什么才能只复制非零的文件。可能将字符串设置为搜索零“错误0”,如果找到,则不复制

setlocal enabledelayedexpansion
for %%a in (*.LOG) do (
   set found=false
   for /f "skip=2 tokens=*" %%b in ('find "Errors 1" "%%a"') do (
      if "!found!"=="false" (
         echo %%a >>output.txt
     copy %%a %OLDDIR%\output\sv1
         set found=true
      )
   )
)
试试这个:

@echo on &setlocal
for %%a in (*.LOG) do (
    find "Errors 0" "%%~a" || copy "%%~a" "%OLDDIR%\output\sv1"
)
|
如果失败,处理下一个命令
&&
如果成功,处理下一个命令