繁体   English   中英

进度指示器/“加载字符串”

Progress indicator/“Loading string”

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

我有一个批处理脚本,其中特定文件夹中所有文件的“名称/修改日期”被写入位于%temp%文件夹中的文本文件(名为“ texttoken.txt”)。 写入所有文件详细信息之后,每个文件将根据其“修改日期”被自动复制到文件夹中。 我注意到的是,在包含大量文件(即成千上万个文件)的文件夹上使用脚本时,脚本似乎在写入文件的那一刻(即花费太长时间)就停止工作了。

我想要的是一个进度指示器(如条形或百分比),用于显示已完成“书写过程”的多少。 失败的话,状态字符串(“正在加载...”或“正在写入文件”)将一直运行到“写入过程”。 我将从批量实施这些方法开始?

1 个回复

由于文件复制/移动是通过robocopy完成的,并且输出未隐藏,因此我将假定您的代码在生成文件列表时似乎停止了

根据您的代码改编

rem Get a carriage return into a variable
for /f %%a in ('copy "%~f0" nul /z') do set "CR=%%a"
set "spinner=/-\|"
(
    for %%A in ("!sourcedir!\*") do (
        <nul >con set /p"=Searching !spinner:~0,1!!CR!"
        set "spinner=!spinner:~1!!spinner:~0,1!"
        echo %%~tA  %%~xA %%~nA
    )
    >con echo Searching files done 
)>>"%temp%\testtoken.txt" 2>nul

或者,您可以先检索文件夹中的文件数,然后显示百分比指示器

for /f %%a in ('copy "%~f0" nul /z') do set "CR=%%a"

set "numFiles=0"
for /f %%a in ('dir /a-d "!sourcedir!\*" ^| findstr /b /c:"  "') do (
    if %%a gtr !numFiles! set "numFiles=%%a"
)

set "count=0"
set "oldPct=-1"
(
    for %%A in ("!sourcedir!\*") do (
        set /a "count+=1"
        set /a "pct=100*count/numFiles"
        if !pct! gtr !oldPct! (
            set "oldPct=!pct!"
            >con echo Processed: !pct!!CR!%%
        )
        echo %%~tA  %%~xA %%~nA
    )
    >con echo Searching files done
)>>"%temp%\testtoken.txt" 2>nul

在这两种情况下,完整的循环都用括号括起来并重定向,而不是为每个正在处理的文件打开/写入/关闭输出文件。

这只是一条评论。 尽管这将使用户知道该过程已完成,但是不需要生成该文件。 您正在编写有关文件的信息,以后再阅读相同的信息。 您应该在第一个循环上进行所有处理。

2 进行异步调用时加载进度指示器不显示

我尝试使用https://pub.dev/packages/loading_overlay在表单中进行异步调用时显示一个简单的加载覆盖。 在表格中有一个 问题是 LoadingOverlay 在 ElevatedButton 中进行异步调用时不显示覆盖加载指示。 为什么它不起作用? ...

7 负荷指标

我正在做一个项目,当单击链接时,该项目要求播放声音。 一切正常,我在下面使用了Javascript。 问题在于,由于浏览器必须下载文件,因此实际听到该文件大约需要30秒钟(取决于Internet速度)。 有没有办法修改下面的代码以显示文件正在加载的指示符? 并将其作为链接: ...

8 bash for 循环中的进度指示器

如何在 bash 脚本的 for 循环中添加进度百分比。 下面是一个脚本示例,其中 for 循环由于数据量大而需要大量时间。 我想知道 for 循环的完整百分比。 ...

9 Flutter Spinkit 进度指示器

我是 flutter 的新手,想知道将Spinkit添加到当前布局的最佳方法是什么。 例如,当我按下一个按钮以连接下一个屏幕上的 web 视图时。 加载 webview 目前需要 2-4 秒,我希望出现进度指示器。 我想创建一个覆盖布局(带有不透明度),在 webview 加载时完成其动画。 这是 ...

10 Excel VBA进度指示器

我有这个Internet上列出的Excel VBA代码,其中列出了文件夹中的所有文件。 我的问题是我想要进度指示器来提示用户该宏仍在运行。 这是代码... ...

2019-03-21 23:17:01 1 226   excel/ vba
暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2022 STACKOOM.COM