将输出重定向到批处理文件中的文件需要关闭吗? (批处理脚本)

Redirecting output to file in batch file requires closing? (batch script)

在批处理脚本中将输出重定向到文件,如下所示

set "output=C:\output.txt"
echo Blah blah blah. >> %output%

是否需要在重定向完成后关闭文件(类似于其他编程语言中的方法)?

我尝试在网上搜索相关资料,但没有找到相关信息;我假设大多数脚本在完成任务(命令)后关闭的事实可能是原因。

但是如果说一个脚本是 运行 在一个 无限循环 中写入一个不同的 output 文件(例如通过将时间附加到output 文件名)或者如果新的输出不断被重定向到同一个 output 文件,“ 未关闭文件 ” 可能会导致问题,内存还是其他?

不,您不必关闭批处理脚本中的任何文件句柄。您不知道文件句柄值,因此您甚至无法关闭它。

在 Windows 上,当进程 ends/crashes 时所有打开的内核句柄都关闭,但是由于批处理文件由 cmd.exe 解释而不启动新的 cmd.exe 进程大多数情况下,它无法利用自动句柄清理,并且会在每次重定向操作后手动关闭文件句柄。