我有很多文件已归档到基于云的保管库。文件本身已通过快捷方式在Windows文件树中替换。快捷方式使用原始文件的名称,并在末尾添加了url文件扩展名(例如:" document1.docx.url"或" document2.pdf.url")。 我想生成文件夹和子文件夹中所有快捷方式的列表,以及指向文件库中文件的URL。
我可以很容易地获得.url快捷方式的列表,但是我在列出快捷方式的目标网址时遇到了问题。
到目前为止,我得到的是:
$items = Get-ChildItem -LiteralPath "G:\bss\AIS" |
Where-Object {$_.Extension -eq ".url"}
$array = New-Object System.Collections.ArrayList
foreach ($item in $items) {
$array.Add([pscustomobject]@{
"Name File" = $item.name
"Path" = $item.FullName
}) | Out-Null
}
$array | Export-Csv G:\bss\AIS\test.csv
这给了我一个如下所示的CSV文件:
Name File Path Admin tips.doc.url G:\folder1\folder2\Admin tips.doc.url Cisco_Icon_Library.pdf.url G:\folder1\folder2\Cisco_Icon_Library.pdf.url AIS Ta ta for now.jpg.url G:\folder1\folder2\AIS Ta ta for now.jpg.url
我想要一些看起来像这样的东西:
Name File Path URL Admin tips.doc.url G:\folder1\folder2\Admin tips.doc.url http://www.thecloud.com/blahblahblah/Admin tips.doc Cisco_Icon_Library.pdf.url G:\folder1\folder2\Cisco_Icon_Library.pdf.url http://www.thecloud.com/blahblahblah/Cisco_Icon_Library.pdf AIS Ta ta for now.jpg.url G:\folder1\folder2\AIS Ta ta for now.jpg.url http://www.thecloud.com/blahblahblah/AIS Ta ta for now.jpg
是否有一种简单的方法来列出网址?
答案 0 :(得分:1)
将for循环更改为以下代码段可以解决问题:
foreach ($item in $items)
{
$array.Add([pscustomobject]@{
"Name File" = $item.name
"Path" = $item.FullName
"URL" = (get-content $item.fullname)[1].Replace("URL=","") }
) | Out-null
}