bash, Linux, Firefox, Ermittelung der URL der aktuell aufgerufenen Webseite

  • Firefox-Version
    aktuelle Versionen wie 82.x oder 83.x
    Betriebssystem
    Linux, Debian, Ubuntu

    Ich möchte per bash ermitteln wie die aktuell aufgerufene Webseite des Firefox im sichtbaren Tab, der sichtbaren Browserinstanz lautet.

    Hierzu konnte man das man wohl zumindest in der Vergangenheit, mit z.B. folgender passenden Abfrage der Datei "sessionstore.js" realisieren:

    Code
    cat $HOME/.mozilla/firefox/*default/sessionstore.js | sed "s/{/\n/g" | egrep -o '"url".*"scroll"' | cut -d\" -f4

    In der Vergangenheit befand sich die Datei bei Linux Debian / Ubuntu wohl an folgender Stelle:

    $HOME/.mozilla/firefox/*default/sessionstore.js

    Doch wo ist die Datei heute zu finden und wie lautet diese ?

    Von der Benamung der Dateipfade her gesehen, taucht zumindest der Begriff "sessionstore" in folgendem Pfad auf. Allerdings nennen sich die darin enthaltenen Dateien erst einmal nicht ganz so wie die gesuchte Datei:

    /home/user/.mozilla/firefox/*.default/sessionstore-backups

    3 Mal editiert, zuletzt von Alfredo534 (29. November 2020 um 23:24)

  • Doch wo ist die Datei heute zu finden und wie lautet diese ?

    /sessionstore-backups/recovery.jsonlz4 - man kann es an der Dateiendung erkennen: Die Dateien sind jetzt komprimiert (LZ4), sprich müsssen erst einmal dekomprimiert werden.

    Innerhalb von Firefox ließe sich das recht einfach via JavaScript lösen:

    JavaScript
    let file = 'pfadZurDatei.jsonlz4';
    OS.File.read(file, { compression: 'lz4' }).then(bytes => {
        OS.File.writeAtomic(
            file + '.json',
            JSON.stringify(JSON.parse(new TextDecoder().decode(bytes)), null, 1)
        )
    });

    Über Bash - keine Ahnung. Mir ist aber auch die Motivation dahinter nicht klar.