![从命令行解压 Linux 上的 firefox 57+ 打开的选项卡文件:错误 44:无法识别的标头:文件无法解码](https://linux22.com/image/139262/%E4%BB%8E%E5%91%BD%E4%BB%A4%E8%A1%8C%E8%A7%A3%E5%8E%8B%20Linux%20%E4%B8%8A%E7%9A%84%20firefox%2057%2B%20%E6%89%93%E5%BC%80%E7%9A%84%E9%80%89%E9%A1%B9%E5%8D%A1%E6%96%87%E4%BB%B6%EF%BC%9A%E9%94%99%E8%AF%AF%2044%EF%BC%9A%E6%97%A0%E6%B3%95%E8%AF%86%E5%88%AB%E7%9A%84%E6%A0%87%E5%A4%B4%EF%BC%9A%E6%96%87%E4%BB%B6%E6%97%A0%E6%B3%95%E8%A7%A3%E7%A0%81.png)
我需要解压缩 Firefox 57+ 打开的选项卡文件。
我unlz4
从 Ubuntu 包中使用liblz4-tool
:
$ cp .mozilla/firefox/t6bznle5.default/sessionstore-backups/recovery.jsonlz4 ~/recovery.lz4
$ unlz4 recovery.lz4
Decoding file recovery
Error 44 : Unrecognized header : file cannot be decoded
$ echo $?
44
答案1
我在 Ubuntu 20.04 上测试了以下方法是否有效:
方法 1:使用 GitHub 上的 mozlz4 二进制文件:
从以下位置下载 mozlz4 的 linux 二进制文件https://github.com/jusw85/mozlz4。然后运行以下命令:
chmod u+x mozlz4-linux
./mozlz4-linux -x filename.jsonlz4
方法 2:使用 Ubuntu 存储库中的 lz4json 包:
Ubuntu 20.04 存储库有一个名为 lz4json 的包。我还没有检查过它是否存在于以前的 Ubuntu 版本中。
要安装和使用它,请运行
sudo apt install lz4 lz4json
lz4jsoncat ~/.mozilla/firefox/*default*/sessionstore-backups/recovery.jsonlz4
上面的输出将显示一个缩小的 json。为了使其可读,您可以使用“jq”json 解析器:
sudo apt install jq
# then pipe the output of the previous command through jq to make it readable:
lz4jsoncat ~/.mozilla/firefox/*default*/sessionstore-backups/recovery.jsonlz4 | jq
如果您只想查看 URL 列表和页面标题,可以使用以下命令:
lz4jsoncat ~/.mozilla/firefox/*default*/sessionstore-backups/recovery.jsonlz4 \
| jq '.["windows"] | .[0] | .["tabs"] | .[] | .["entries"] | .[0] | .url,.title' \
| grep -v 'New Tab' | grep -v 'about:newtab' | sed 's/"http/\n"http/g'