将 Get-ChildItem 结果捕获到字符串数组中以供 HTML 输出
Capture Get-ChildItem results into string array for HTML output
我正在编写 PowerShell 脚本,我想捕获目录中的文件列表并将其存储到变量中。捕获后,我想将其打印到 HTML 文件中。我已经捕获了这样的数据:
$listDownloads = Get-ChildItem -Force "C:\Users\Someuser\Downloads"
现在,我想将 $listDownloads
转换为字符串并拆分它。我该怎么做?
我试过这个:
$listSplit = $listDownloads.ToString().Split(" ")
但我得到了这个输出:
System.Object[]
更新:
$html = '<html>'
$body = '<body>'
$p = '<p>'
$pClose = '</p>'
$StatusDownloads = 'Directory of the Downloads Folder'
$pTags = $p.ToString() + $StatusDownloads + $pClose.ToString();
$listDownloads = (Get-ChildItem -Force "C:\Users\Someuser\Downloads").Name;
function createHTML($addtoFile){
$addtoFile | Add-Content 'status.html'
}
function printData($printData){
Write-Output $printData
}
$html | Set-Content 'status.html'
createHTML($html)
createHTML($body)
createHTML($pTags)
createHTML($listDownloads)
当我尝试打印 $listDownloads 时,它会在同一行上显示所有数据(即文件 1 文件 2),我希望每个文件或文件夹都显示在新行上。我该怎么做?如果我在 Powershell 中键入 Get-ChildItem -Force "C:\Users\Someuser\Downloads",它会逐行给出文件列表。我想要在我的 HTML 页面上显示这种类型的输出。
我认为您想要拆分的唯一原因是获取文件名数组。
如果是这样,你可以这样做:
$list = (Get-ChildItem -Force "C:\Users\Someuser\Downloads").FullName
从你的更新中你需要传递给你的函数:
createHTML($listDownloads -join "`n")
我正在编写 PowerShell 脚本,我想捕获目录中的文件列表并将其存储到变量中。捕获后,我想将其打印到 HTML 文件中。我已经捕获了这样的数据:
$listDownloads = Get-ChildItem -Force "C:\Users\Someuser\Downloads"
现在,我想将 $listDownloads
转换为字符串并拆分它。我该怎么做?
我试过这个:
$listSplit = $listDownloads.ToString().Split(" ")
但我得到了这个输出:
System.Object[]
更新:
$html = '<html>'
$body = '<body>'
$p = '<p>'
$pClose = '</p>'
$StatusDownloads = 'Directory of the Downloads Folder'
$pTags = $p.ToString() + $StatusDownloads + $pClose.ToString();
$listDownloads = (Get-ChildItem -Force "C:\Users\Someuser\Downloads").Name;
function createHTML($addtoFile){
$addtoFile | Add-Content 'status.html'
}
function printData($printData){
Write-Output $printData
}
$html | Set-Content 'status.html'
createHTML($html)
createHTML($body)
createHTML($pTags)
createHTML($listDownloads)
当我尝试打印 $listDownloads 时,它会在同一行上显示所有数据(即文件 1 文件 2),我希望每个文件或文件夹都显示在新行上。我该怎么做?如果我在 Powershell 中键入 Get-ChildItem -Force "C:\Users\Someuser\Downloads",它会逐行给出文件列表。我想要在我的 HTML 页面上显示这种类型的输出。
我认为您想要拆分的唯一原因是获取文件名数组。
如果是这样,你可以这样做:
$list = (Get-ChildItem -Force "C:\Users\Someuser\Downloads").FullName
从你的更新中你需要传递给你的函数:
createHTML($listDownloads -join "`n")