Powershell - 我的倒计时器出了什么问题

2023-12-06

我有一个计数器脚本需要两个参数:

1) 计数器启动前等待的秒数。

2) 计数器持续时间(以秒为单位)。

例如,如果我输入 3,10 我希望 3 秒后计时器将从 10 倒计时到 0 并每秒将其写入输出。

这是我的脚本:

$timeBeforeStart = $args[0]
$waitSeconds = $args[1]  

$startTime = get-date
$endTime   = $startTime.addSeconds($waitSeconds)
$timeSpan = new-timespan $startTime $endTime
start-sleep -s $timeBeforeStart
while ($timeSpan -gt 0) 
{
    $timeSpan = new-timespan $(get-date) $endTime
    write-host $([string]::Format("`rTime Remaining: {0:d2}:{1:d2}:{2:d2}",
    $timeSpan.hours, $timeSpan.minutes, $timeSpan.seconds)) 
    sleep 1
}

不幸的是它不起作用,睡眠似乎与计数器同时工作,而不是延迟计数器。

PS C:\> c:\555.ps1 3 10 
Time Remaining: 00:00:07
Time Remaining: 00:00:05
Time Remaining: 00:00:04
Time Remaining: 00:00:03
Time Remaining: 00:00:02
Time Remaining: 00:00:01
Time Remaining: 00:00:00
Time Remaining: 00:00:00

我也尝试过开始睡眠-s结果是一样的。

顺便问一下, sleep 和“start-sleep -s”有什么区别?


试试这个方法:

$timeBeforeStart = 0
$waitSeconds = 60

Start-Sleep -Seconds $timeBeforeStart

$waitSeconds..0 | Foreach-Object {
    Write-Host "`r          Time Remaining: $_ " -NoNewline -foregroundcolor green
    Start-Sleep -Seconds 1
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Powershell - 我的倒计时器出了什么问题 的相关文章

随机推荐

  • Golang 到 wasm 编译

    我使用以下命令将 Golang 代码编译为 wasm GOOS js GOARCH wasm go build o main wasm 尝试使用 wasmtime 执行时出现以下错误 wasmtime main wasm Error fai
  • 如何使用 NAs - R 简单地计算行数[重复]

    这个问题在这里已经有答案了 我正在尝试计算整个 df 的 NA 行数 因为我正在计算 NA 的行数占 df 总行数的百分比 我已经看过这个帖子了 确定具有 NA 的行数但它只显示特定范围的列 tl dr 逐行 你会想要sum complet
  • fullcalendar:有没有办法仅在我通过事件函数加载事件后调用 dayRender

    我正在构建的网络应用程序中使用 fullcalendar 我加载我的事件事件函数和阿贾克斯 这是我的代码 var ajaxData var eventsJsonArray var json backgrundColor var json i
  • “实验性”gradle 插件在本机库链接期间出现“未定义引用”错误

    我尝试使用基于 实验性 com android 的新构建系统创建一个简单的 JNI 应用程序 model application com android tools build gradle experimental 0 9 2 gradl
  • 从 StreamReader 读取文件时出现 C# 编码问题(问号)

    我在从 Windows Phone 应用程序读取 txt 文件时遇到问题 我制作了一个简单的应用程序 它从 txt 文件读取流并打印它 不幸的是 我来自意大利 我们有很多带有口音的信件 问题是 事实上所有带重音的字母都被打印为问号 这是示例
  • 如何通过 XAML 设置 LISTBOX 工具提示

    我在 WPF 中有一个列表框 如下所示
  • 如何动态迭代/检测 ValueTuple 中具有空成员的成员类型? [复制]

    这个问题在这里已经有答案了 我正在尝试利用ValueTuple简洁地输入一个列表N泛型方法的参数列表中的类型 然后迭代该类型列表 但是 我在迭代类型时遇到了问题 因为初始Tuple has null会员 所以打电话 GetType 给了我一
  • JScrollPane 未滚动超过设定大小

    我正在使用一个滚动窗格 里面有一个 JPanel 它绘制一个正方形网格 这些正方形是来自 数组的对象 如果数组是大小为 18 2 的矩形 83 81 则它看起来像 https i stack imgur com MEBrt png 注意网格
  • 如何使用 python 和底图绘制不规则间隔的 RGB 图像?

    鉴于我有三个矩阵来描述我想要绘制的数据 lons 具有 n lons n lats 的二维矩阵 lats 具有 n lons n lats 的二维矩阵 dataRGB 具有 n lons n lats 3 的 3D 矩阵 使用 python
  • 从 Linux 内核发送小 UDP 数据包到 LOOPBACK

    情况 我的代码基本上被侵入了 Linux 内核的驱动程序 我想在将值得注意的原始事件发送到主系统之前通知用户空间中的应用程序 解决方案步骤 我在这里找到了一个从内核空间发送 UDP 数据包的好例子 http kernelnewbies or
  • 当我使用 pyinstaller 创建 .exe 文件时,“应用程序冻结时找不到 dynlib/dll”,因为 pylibmtx 发生了错误

    when I 我正在努力制作 exe 文件 错误消息显示第 9 行有问题 所以我检查了我的代码 有导入的库 pylibdmtx 用于解码数据矩阵 所以我尝试删除有关该库的所有内容以及其他相关属性 然后就可以了 我试图找出该问题以进行故障排除
  • OpenCL - 多个 GPU 缓冲区同步

    我有一个 OpenCL 内核 用于计算系统中其他粒子对某个粒子施加的总力 然后是另一个积分粒子位置 速度的内核 我想在多个 GPU 上并行化这些内核 基本上为每个 GPU 分配一定数量的粒子 但是 我必须多次运行该内核 并且每个 GPU 的
  • Elixir 列表解释为 char 列表

    我刚刚开始使用 Elixir 我正在使用 ExUnit 为我自己实现的简单 Enumerable 函数编写一些测试 而不使用标准 Enum 模块 在我的测试中 我发现每当我引用该列表时 7 8 9 一旦在标准输出中打印出来 我就会看到字符列
  • 启用/安装 GD 扩展? --没有-gd

    当我的 phpinfo 在 配置命令 中输出时 如何启用 或者可能我需要安装 GD 没有 gd 我的 phpinfo 输出 Core 中也没有列出 gd AWS 上的 PHP 版本 5 2 4 如果您使用的是基于 Debian 的服务器 例
  • winforms 数据绑定仅适用于开发机器

    我的目标是框架 4 0 这在开发计算机上运行良好 我可以在启动时看到表单 其中文本框显示绑定消息 但是 当我在任何其他计算机上部署可执行文件时 它不会声称 无法绑定到数据源上的属性或列注释 非常奇怪的是 如果我针对 3 5 框架进行编译 它
  • scanf 不读取输入

    我阅读了更多有关 scanf 的帖子 发现一些答案机器人没有帮助我 while comanda int tmp if scanf d tmp 0 getchar else comanda tmp fprintf stdout d coman
  • 中断处理程序可以被抢占吗?

    我知道Linux有嵌套中断 其中一个中断可以 抢占 另一个中断 但是其他任务又如何呢 我只是想了解linux如何处理中断 它们可以被其他用户任务 内核任务抢占吗 Reading 为什么在中断上下文中执行的内核代码 线程无法休眠 链接到罗伯特
  • 将图像从一个工作簿复制到另一工作簿

    我在合并单元格范围 S1 V8 的sheet1 中有一张图像 我不知道这张图片的名称 因为每次从模板创建新的 Excel 文件时 我们都会在该区域粘贴不同的图片 我想将此工作簿或另一个工作簿中此范围内的图片复制到单元格 A6 中名为 数据库
  • PHP:在 6 行后结束并开始新的

    我想做一个表 然后每6行应该有一个tr 然后行在td里面 所以例子 tr td td 1 td td 2 td td 3 td td 4 td td 5 td td 6 tr tr start new tr after 6 rows rep
  • Powershell - 我的倒计时器出了什么问题

    我有一个计数器脚本需要两个参数 1 计数器启动前等待的秒数 2 计数器持续时间 以秒为单位 例如 如果我输入 3 10 我希望 3 秒后计时器将从 10 倒计时到 0 并每秒将其写入输出 这是我的脚本 timeBeforeStart arg