ConvertTo-HTML 输出问题
ConvertTo-HTML output issue
我使用 gci
和 convertto-html
生成磁盘 space 使用情况 HTML 报告。我的脚本的一部分为 -folder parameter
输入的每个指定文件夹生成 2 tables。在第一个 table 中,我检索了 10 个最大的文件夹,在第二个 table 中,我生成了文件年龄报告。
现在的问题是:当只输入一个目录时,HTML 输出没问题,但如果我输入 2 个目录名称,我只会得到最后输入的目录名称的 tables。
例如:
my-function -folder c:\folder1, c:\folder2
只会为目录 c:\folder2
.
创建 tables
如果我 运行 这个函数没有转换为 HTML 我会在我的控制台中得到每个目录的所有 table,就像我 out-file
到一个简单的 txt .
您只获得列表中最后一个文件夹的表格,因为您将表格分配给循环内部的变量:
$folder | % {
...
big = $gdfolders | ... | ConvertTo-Html -Fragment -As Table | Out-String
$Fileage = $gdage | ... | ConvertTo-Html -Fragment -As Table | Out-String
}
ConvertTo-Html -Body "big $FileAge" | Out-File c:\test.html
这会将上一次迭代中的表替换为当前迭代中的表,在循环完成后只剩下上一次迭代中的表。
您需要做的是通过将它们附加到变量来收集循环中的所有表(注意循环内的 +=
):
<b>big = @()
$Fileage = @()</b>
$folder | % {
...
big <b>+=</b> $gdfolders | ... | ConvertTo-Html -Fragment -As Table | Out-String
$Fileage <b>+=</b> $gdage | ... | ConvertTo-Html -Fragment -As Table | Out-String
}
ConvertTo-Html -Body "big $FileAge" | Out-File c:\test.html
我使用 gci
和 convertto-html
生成磁盘 space 使用情况 HTML 报告。我的脚本的一部分为 -folder parameter
输入的每个指定文件夹生成 2 tables。在第一个 table 中,我检索了 10 个最大的文件夹,在第二个 table 中,我生成了文件年龄报告。
现在的问题是:当只输入一个目录时,HTML 输出没问题,但如果我输入 2 个目录名称,我只会得到最后输入的目录名称的 tables。
例如:
my-function -folder c:\folder1, c:\folder2
只会为目录 c:\folder2
.
如果我 运行 这个函数没有转换为 HTML 我会在我的控制台中得到每个目录的所有 table,就像我 out-file
到一个简单的 txt .
您只获得列表中最后一个文件夹的表格,因为您将表格分配给循环内部的变量:
$folder | % {
...
big = $gdfolders | ... | ConvertTo-Html -Fragment -As Table | Out-String
$Fileage = $gdage | ... | ConvertTo-Html -Fragment -As Table | Out-String
}
ConvertTo-Html -Body "big $FileAge" | Out-File c:\test.html
这会将上一次迭代中的表替换为当前迭代中的表,在循环完成后只剩下上一次迭代中的表。
您需要做的是通过将它们附加到变量来收集循环中的所有表(注意循环内的 +=
):
<b>big = @()
$Fileage = @()</b>
$folder | % {
...
big <b>+=</b> $gdfolders | ... | ConvertTo-Html -Fragment -As Table | Out-String
$Fileage <b>+=</b> $gdage | ... | ConvertTo-Html -Fragment -As Table | Out-String
}
ConvertTo-Html -Body "big $FileAge" | Out-File c:\test.html