首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如果输出包含“未找到文件”,则日志语句A,否则语句B(批处理文件)

如果输出包含“未找到文件”,则日志语句A,否则语句B(批处理文件)
EN

Stack Overflow用户
提问于 2016-01-12 19:57:37
回答 2查看 120关注 0票数 0

我有一个批处理文件,用于检查是否存在hiberation文件。如果目录清单完成,而文件未找到,它将输出: file not,但由于某种原因,文本没有按我的意愿进入我的日志。如果有办法让它去我的日志,请告诉我。

否则,我希望有一些代码,基本上会说,如果输出包含“没有找到的文件”,那么在我的输出日志中记录文本“Found”。如果是的话,它会自动记录我需要的信息,所以什么都不需要。

代码语言:javascript
复制
set output=mylog.txt

echo.=================================>> "%output%"
echo.Performing Hibernation file Check...
echo.Hibernation File Check: >> "%output%"
C:
cd /
dir /a /s hiberfil.sys >> "%output%"
echo.
echo.
echo.=================================>> "%output%"
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-01-12 20:09:48

将批处理文件中的dir命令更改为以下命令,以将stderr输出到输出stdout的同一文件。

代码语言:javascript
复制
dir /a /s hiberfil.sys >> "%output%" 2>>&1
票数 1
EN

Stack Overflow用户

发布于 2016-01-12 20:52:25

正确回答标题then log statement A, otherwise statement B中的问题

代码语言:javascript
复制
(dir /a /s hiberfil.sys >nul 2>&1 && echo yes || echo no) >>"%Output%"

>nul 2>&将所有输出(StdOut和StdErr)重定向到NUL:

&&的作用是“如果先前的人成功的话.”

||的作用是“如果先前的人没有成功的话.”

但是当你的批处理文件生成的时候,

代码语言:javascript
复制
dir /a /s /b hiberfil.sys >> "%output%" 2>&1

会是最好的答案。它只给出一行反馈--“文件未找到”或文件名(包括完整路径)。(除非它找到几个匹配的文件-然后每文件一行)

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34752680

复制
相关文章

相似问题

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