【问题标题】:PowerShell Converto-html format stylePowerShell Convertto-html 格式样式
【发布时间】:2014-05-07 01:04:18
【问题描述】:

我正在尝试使用以下代码将 powershell 结果输出到 html 文件中:

$a = "<style>"
$a = $a + "BODY{background-color:white;}"
$a = $a + "TABLE{border-width: 1px;border-style: solid;border-color: black;border-collapse: collapse;}"
$a = $a + "TH{border-width: 1px;padding: 0px;border-style: solid;border-color: black;background-color:white}"
$a = $a + "TD{border-width: 1px;padding: 0px;border-style: solid;border-color: black;background-color:white}"
$a = $a + "</style>"

Get-item c:\work | select-object Name,Lastwritetime,@{label="Size" ; expression={[math]::round(((Get-childitem -force "c:\work" -recurse | measure-object length -sum).sum/1Gb),1)}}
get-childitem .....| Convertto-html -head $a | Out-File -append C:\temp\backup.htm
....
....

html文件的结果如下:

所以我的问题是:

如何在顶部只有一个Name LastTime Size 行以及如何固定表单的长度?

【问题讨论】:

    标签: html powershell powershell-2.0 powershell-3.0


    【解决方案1】:

    每次使用 ConvertTo-Html 时,您都在创建一个新表。这就是宽度不一致的原因。

    将表格的所有结果放入一个变量中,然后将其转换为 html 一次。这将创建一个带有一个标题和一致宽度的 html 表格。

    【讨论】:

    • 感谢提示,get-childitem 会有超过 50 行,如何将它们全部放入一个变量中?还是使用数组更好?抱歉,我在 powershell 方面没有太多经验
    • 为什么需要这么多单独的 Get-ChildItem 行?展示其中的一些 - 可能有一种方法可以让您以更简单的方式获得所需的一切。
    • 如果你真的需要单独调用 Get-ChildItem 你可以这样做: $items = Get-ChildItem ...; $items += Get-ChildItem ...; $items += Get-ChildItem ...;
    • 我用get-childitem 更新了我的帖子。基本上我想做的很简单,从 PC 列表中获取上次的文件夹名称和大小。我试图使用foreach 循环遍历 pclist.txt 文件,但无法使其正常工作,哈哈……所以我只使用最简单的方法来完成它。顺便说一句,谢谢你的提示,我选择了数组来让它现在工作。但如果您不介意,我想听听更好的方法。
    猜你喜欢
    • 2021-09-04
    • 1970-01-01
    • 2017-05-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-01-04
    • 2017-02-18
    • 1970-01-01
    相关资源
    最近更新 更多