问题脚本将书签注入 Edge(基于 Chromium)和 Google Chrome

问题描述 投票:0回答:1

我有一个脚本可以将书签注入 Edge 或 Chrome。在大多数情况下,它工作得相当好,但是,当重新启动浏览器时,收藏夹的 name 会被删除。该书签显示为空白文档图标且没有名称。 (访问该网站后,图标会添加回书签,因此我不关心这一点)。 所以,我的问题是我怎样才能让它不这样做?

当我在启动浏览器之前查看书签文件时,名称就在那里,但启动浏览器后,名称就消失了。我按照这个脚本:https://stackoverflow.com/questions/75642929/add-a-bookmark-to-microsoft-edge-bookmark-bar-with-powershell创建我的脚本。
我的脚本的相关部分是这样的:

$bookmarkPath = "$env:localappdata\Microsoft\Edge\User Data\Default\bookmarks"
$Bookmarks = Get-Content -path $bookmarkpath

$NewBookmark = [pscustomobject][ordered]@{
    guid = (New-Guid).Guid
    name = 'Name from CSV'
    show_icon = $true
    source = 'user_copy'
    type = 'url'
    url = 'URL from CSV'
}
$Bookmarks.roots.bookmark_bar.children += $NewBookmark
$Bookmarks.psobject.properties.remove('checksum')
Try {
    $Bookmarks | ConvertTo-Json -Depth 10 | Set-content -Path $bookmarkPath -force
}
catch {
    $_.exception.message
}

举个例子,这是我所看到的:

{
    "roots": {
        "bookmark_bar": {
            "children": [ {
                "date_added": "13353700456516",
                "date_last_used": "0",
                "guid": "eecb133a-98f9-497b-8ab3-692646b7df74",
                "id": "2",
                "name": "Google",
                "show_icon": true,
                "source": "user_copy",
                "type": "url",
                "url": "https://www.google.com"
            }
      ...
}

启动后:

{
    "roots": {
        "bookmark_bar": {
            "children": [ {
                "date_added": "13353700456516",
                "date_last_used": "13353700708627",
                "guid": "eecb133a-98f9-497b-8ab3-692646b7df74",
                "id": "2",
                "name": "",
                "show_icon": true,
                "source": "user_copy",
                "type": "url",
                "url": "https://www.google.com"
            }
      ...
}

我希望这个名字不会被删除。我尝试将

[pscustomobject]
属性更改为最小属性集(
name
url
type
url
),但它仍然发生。
无论我以这种方式添加多少个书签,我都会得到相同的结果。当浏览器被重写时,它们的名称都会被删除。

powershell google-chrome microsoft-edge bookmarks
1个回答
0
投票

我无法用您的代码重现此问题。特别是,如果没有

ConvertFrom-Json
,我什至无法添加书签。

无论如何,我想你应该将

"show_icon": true
更改为
false
"show_icon": true
表示仅显示图标,因此不会显示该书签的名称。

© www.soinside.com 2019 - 2024. All rights reserved.