I recently copied my favourites between machines which started me thinking about viewing favourites. Like many people I have generated a lot of favourites over the years – do I really need them all. Don’t know because I don’t know what they are. Its easy to correct that
$favs = New-Object -ComObject Shell.Application Get-ChildItem -Path $favs.NameSpace(0x6).Self.Path -Recurse | where {-not $_.PSIsContainer} | foreach { $fav = New-Object -TypeName PSObject -Property @{ Name = $_.BaseName } Get-Content -Path $_.FullName | foreach { if ($_.StartsWith("URL=")) { $fav | Add-Member -MemberType NoteProperty -Name URL -Value $_.Replace("URL=","")} } $fav }
The script use the Shell COM object to access the favourites special folder. We then iterate through the favourites and get the content of each favourite. These are just text files so we can pick out the URL. An object is created to hold the favourite name and URL and then displayed