Rimuovi i segnalibri di Chrome con PowerShell

1

Sto cercando un modo in PowerShell per rimuovere e aggiungere segnalibri a Chrome. I segnalibri di Chrome sono archiviati in un file JSON formattato come di seguito, con i segnalibri effettivi memorizzati nell'oggetto $ data.roots.bookmark_bar.children. Ho provato qualcosa di simile:

$data = Get-content $chromebookmarkfile | out-string | ConvertFrom-Json    
$data | Where-Object {$data.Roots.Bookmark_bar.children.Name -Notmatch "^NA"} | Convertto-JSON | Out-File "C:\Users\Name\Desktop\bookmarkupdated.js"

e sembra rimuovere tutti i segnalibri.

> {    "checksum": "f8d56bf82388c64d566247e1f510d0c8",    "roots": {
>       "bookmark_bar": {
>          "children": [ {
>             "date_added": "13186673111751399",
>             "id": "5",
>             "meta_info": {
>                "last_visited_desktop": "13189831127309905"
>             },
>             "name": "Facebook",
>             "type": "url",
>             "url": "https://www.facebook.com/"
>          }],
>          "date_added": "13186673028532299",
>          "date_modified": "13189832329106862",
>          "id": "1",
>          "name": "Bookmarks bar",
>          "type": "folder"
>       },
>       "other": {
>          "children": [  ],
>          "date_added": "13186673028532314",
>          "date_modified": "0",
>          "id": "2",
>          "name": "Other bookmarks",
>          "type": "folder"
>       },
>       "synced": {
>          "children": [  ],
>          "date_added": "13186673028532317",
>          "date_modified": "0",
>          "id": "3",
>          "name": "Mobile bookmarks",
>          "type": "folder"
>       }    },    "version": 1 }

Qualsiasi aiuto è apprezzato.

    
posta Thomas 21.12.2018 - 04:47
fonte

1 risposta

2

Potresti farlo in questo modo:

$json = Get-Content $chromebookmarkfile -Raw | ConvertFrom-Json
$json.Roots.Bookmark_bar.children = @($json.Roots.Bookmark_bar.children | where { $_.name -notmatch "^NA" })
$json | ConvertTo-Json -Depth 10 | Out-File "C:\Users\Name\Desktop\bookmarkupdated.js" -Encoding UTF8
    
risposta data 27.12.2018 - 09:52
fonte

Leggi altre domande sui tag