相关疑难解决方法(0)

如何在PowerShell中对对象中的多个项目求和?

我有:

$report.gettype().name
Object[]

echo $report

Item                       Average
--                         -------
orange                     0.294117647058824
orange                    -0.901960784313726
orange                    -0.901960784313726
grape                      9.91335740072202
grape                      0
pear                       3.48736462093863
pear                      -0.0324909747292419
pear                      -0.0324909747292419
apple                     12.1261261261261
apple                     -0.0045045045045045
Run Code Online (Sandbox Code Playgroud)

我想创建一个变量$ total,(例如哈希表),其中包含每个项目的"Average"列的总和,例如,

echo $total

orange  -1.5097
grape    9.913
pear     3.423
apple   12.116
Run Code Online (Sandbox Code Playgroud)

现在我正在考虑循环浏览$报告,但这很难看,而且我正在寻找比下面的起点更优雅的东西(不完整):

$tmpPrev = ""
foreach($r in $report){
    $tmp = $r.item
    $subtotal = 0
    if($tmp <> $tmpPrev){
        $subtotal += $r.average
    }
Run Code Online (Sandbox Code Playgroud)

我怎么能这样做?

powershell

21
推荐指数
3
解决办法
6万
查看次数

如何将Get-ChildItem -Recurse结果分组到一个输出表中?

我正在使用以下Powershell命令:

Get-ChildItem -Recurse *.txt
Run Code Online (Sandbox Code Playgroud)

但是,如果有多个结果,则输出将如下所示:

Get-ChildItem -Recurse *.txt
Run Code Online (Sandbox Code Playgroud)

但是我以某种形式获得分组结果。

可能是这样的:

    Directory: C:\TestFolder\myfolder\

Mode          LastWriteTime   Length Name
----          -------------   ------ ----
-a---     d/m/yyyy hh:MM PM   1234   dragons.txt

    Directory: C:\TestFolder\anotherfolder\

Mode          LastWriteTime   Length Name
----          -------------   ------ ----
-a---     d/m/yyyy hh:MM PM   66550  jabberwocky.txt
Run Code Online (Sandbox Code Playgroud)

或这个:

Mode          LastWriteTime   Length Directory                     Name
----          -------------   ------ ---------                     ----
-a---     d/m/yyyy hh:MM PM   1234   C:\TestFolder\myfolder\       dragons.txt
-a---     d/m/yyyy hh:MM PM   66550  C:\TestFolder\anotherfolder\  jabberwocky.txt
Run Code Online (Sandbox Code Playgroud)

您可能会明白。我如何才能做到这一点,最好以简单而优雅的方式完成?

我试过了,Get-ChildItem -Recurse *.txt | Format-Table但这没什么用。我还检查了Stack Overflow提出的最相关的类似问题(即“ 使用PowerShell的Get-ChildItem递归 ”,以及其他问题),但是到目前为止,还没有能够提炼出解决方案。 …

powershell

7
推荐指数
1
解决办法
4121
查看次数

标签 统计

powershell ×2