批处理文件 - 如何在多个实例中输出批处理文件的信息

发布于 2024-11-09 06:48:59 字数 185 浏览 0 评论 0原文

是否可以从批处理文件中输出信息,并具有多个输出。

例如

test.bat > output.txt

,20 秒后创建一个新文件

test.bat > output2.txt

等(进程仍在运行)

Is it possible to output information from a batch file, with multiple outputs.

E.g.

test.bat > output.txt

then 20 seconds later create a new file

test.bat > output2.txt

etc. (With the process still running)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

时常饿 2024-11-16 06:48:59

无需因为批量限制而放弃。这可以很容易地实现,

@ECHO off
:: Check if the script has ran before, and set the iteration
IF EXIST next.txt (
FOR /F "tokens=1" %I in (next.txt) DO SET /A _result=%I+1> next.txt
) else (
SET /A _result=^1> next.txt
)
:: Now the iteration is stored in a variable named %_result%

echo test > output%_result%.txt

如果您下载了 Windows 版 sed 的副本,那么获得具有时间顺序的唯一名称应该不会太难。

time /t | sed "s/:/_/g" | sed "s/ /_/">>time.txt
for /F "tokens=*" %%I IN (time.txt) DO echo test >> output-%%I.txt

注意:如果您使用的是 Win Vista/7,则需要将其更改为 %I 而不是 %%I

No need to give up just cause you're limited to batch. This can be achieved quite easy

@ECHO off
:: Check if the script has ran before, and set the iteration
IF EXIST next.txt (
FOR /F "tokens=1" %I in (next.txt) DO SET /A _result=%I+1> next.txt
) else (
SET /A _result=^1> next.txt
)
:: Now the iteration is stored in a variable named %_result%

echo test > output%_result%.txt

If you download a copy of sed for windows it shouldn't be too hard to achieve a unique name with chronology.

time /t | sed "s/:/_/g" | sed "s/ /_/">>time.txt
for /F "tokens=*" %%I IN (time.txt) DO echo test >> output-%%I.txt

Note: if you're using Win Vista/7 you'll need to change this to %I instead of %%I

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文