有人可以告诉我我错了吗?我希望在文件名包含Expenses的文件夹中运行所有文件
cd /D Z:\System Administrator\System Backups\Scripts\
FINDSTR /S /M "expenses" *.*
FOR /F %%i in ('findstr /I /S /M "expenses" *.py') DO command %%i
findstr会为我提供所需文件的列表,但我无法让它们运行并得到以下错误:该命令未被识别为内部或外部命令。
文件列表将为
费用2017-18.py
费用2018-19.py
等等
预先感谢
更新
我发现此方法可行,尽管我欢迎任何改进
for /R %%f in (*expenses*.py) do start python "%%f"
答案 0 :(得分:0)
我相信所寻求的是真正地执行 python文件%%i
的指令。我不是python专家-我不知道您是否只需要在提示中使用whatever.py
或somexecutablename whatever.py
。
我相信您可能需要call "%%i"
来串行运行文件,或者要并行运行,请使用start "" "%%i"
。无论哪种情况,如果您需要somexecutablename
,请在"%%i"
之前插入。
start
版本中的空字符串是windowtitle。它确实需要存在,即使为空-但您可以将其替换为"%%i"
以显示正在执行的文件名作为窗口标题。