如何检查批处理文件中是否存在某种类型的文件?

时间:2017-08-29 09:50:17

标签: batch-file tensorboard

我现在正在学习TensorFlow,并经常编写像events.out.tfevents.%some number%.%PC name%这样的事件文件。

我想写一个批处理文件来检查是否存在一个或多个事件文件。 (1)如果存在这样的文件,则让用户决定是否覆盖以前的文件 (2)如果没有,运行python脚本生成一个新的事件文件,然后激活TensorBoard。

假设我已经定义了用户变量%TF_DIR%

考虑到这一点,我写了类似的东西:

set pyName=%1
cd %TF_DIR%/graphs/%pyName%
if exist *.tfevents.* 
(
    # ask if user want to overwrite, then decided whether to run the script again
)
else
( 
    echo No previous event files detected, run the script to create a new event...
    python %tfDIR%/%pyName%.py
)

tensorboard --logdir=%cd%
cd %TF_DIR%

奇怪的是,该文件无效,并在if exist if exist *.tfevents.*返回"无效命令语法" 等内容。我找不到出了什么问题。有人能帮我吗?谢谢!

1 个答案:

答案 0 :(得分:1)

语法 不正确;在构造if ... ( ... ) else ( ... )中,(必须与if位于同一行,并且) else (必须位于同一行。

作为补充说明,除非你对标签和goto有所反对,否则我建议使用它们而不是像if ... ( ... ) else ( ... )这样的花哨的现代技巧。 ( )内的语法不一定是您所期望的。