我运行了一个powershell函数,它告诉我运行任何命令需要多长时间。它看起来像这样。
(Measure-Command { <command> | Out-Default }).TotalSeconds | ForEach-Object { $totalMinutes = [math]::Floor($_ / 60); $remainingSeconds = $_ % 60; Write-Host "Time Elapsed: $totalMinutes Minutes, $remainingSeconds seconds" }
我希望能够像这样运行它:
c:\files> timer <command>
我想将该功能保存到我的配置文件中。我知道我的配置文件在哪里以及如何编辑它,但我不知道如何将此函数保存到我的配置文件中,以便我可以按照我所描述的timer <command>
执行,例如timer py --version
。你能告诉我正确的语法是什么吗?
2条答案
按热度按时间4dc9hkyq1#
你可以在
Measure-Command
周围创建一个以脚本块为参数的 Package 器函数,请注意,为了让它工作,你必须使用语法调用你的函数:timer {...}
(花括号是必需的)。如何使用它的例子:
将产生以下输出:
注意,由于使用
Out-Default
,无法捕获脚本块的输出。如果你想从定时器函数中捕获输出,另一种方法是在脚本块执行之前存储
datetime.Now
,然后在执行完成后计算时间差:现在可以毫无问题地捕获输出:
ztigrdn82#
要获得 * 所有 * 你需要做的就是添加单词
timer
作为前缀的功能,你可以这样做:输出如下所示:
另一种方法是将实际命令 Package 为字符串:
输出如下所示: