手机砖后如何从备份数据恢复开放的歌剧选项卡? -- opera-mobile 领域 和 browser-tabs 领域 android 相关 的问题

How to recover open opera tabs from backup data after phone bricked?


简体版||繁體版
1
vote

问题

中文

我在歌剧上打开了200多个选项卡,它们通常会再次重新开放,即使重新启动后也会重新开放。

我的手机打破了,但我有一个外部SD卡,内部SD卡和TWRP的备份,尺寸为23.7 GB,但没有明显可访问的结构。

从另一个qa ,可以连接 data.ext4.win000 data.ext4.win009 文件并将它们作为tar存档访问(对您希望备份提取到首先提取的CD是一个好主意):

bash cat data.ext4.win??? | tar xvfi -

这确实是匹配与模式匹配的每个文件 data.ext4.win ???然后将连接文件管制到tar for 萃取。 - 因为文件名告诉焦油从Stdin提取。这 我选项忽略每个存档之间的零块 文件连接。

在此示例中,我使用了ext4格式化的数据分区。改变 data.ext4匹配您正在提取的分区。

虽然tar命令用

退出
    

/data/magisk_backup_bd5d0aaa87b96353c78a3bf3a455121d0c767089c/boot.img.gz tar:由于先前的错误引起的故障状态

    

它在此臀部之前提取了很多文件。

现在我有我的 /data 目录,我可以访问 root@localhost:/home/marietto# lsusb Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 001 Device 002: ID 148f:2573 Ralink Technology, Corp. RT2501/RT2573 Wireless Adapter Bus 001 Device 003: ID 0a5c:2121 Broadcom Corp. BCM2210 Bluetooth Bus 001 Device 004: ID 05e3:0608 Genesys Logic, Inc. USB-2.0 4-Port HUB Bus 001 Device 009: ID 04d9:1503 Holtek Semiconductor, Inc. Shortboard Lefty Bus 001 Device 010: ID 046d:c05a Logitech, Inc. Optical Mouse M90 root@localhost:/home/marietto# adb devices List of devices attached 0 root@localhost:/home/marietto# lsusb Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 001 Device 002: ID 148f:2573 Ralink Technology, Corp. RT2501/RT2573 Wireless Adapter Bus 001 Device 003: ID 0a5c:2121 Broadcom Corp. BCM2210 Bluetooth Bus 001 Device 004: ID 05e3:0608 Genesys Logic, Inc. USB-2.0 4-Port HUB Bus 001 Device 009: ID 04d9:1503 Holtek Semiconductor, Inc. Shortboard Lefty Bus 001 Device 010: ID 046d:c05a Logitech, Inc. Optical Mouse M90 root@localhost:/home/marietto# adb devices List of devices attached 1 。我该如何处理它们以提取打开的URL列表?

目录结构

数据/数据/ com.opera.browser

  root@localhost:/home/marietto# lsusb  Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 001 Device 002: ID 148f:2573 Ralink Technology, Corp. RT2501/RT2573 Wireless Adapter Bus 001 Device 003: ID 0a5c:2121 Broadcom Corp. BCM2210 Bluetooth Bus 001 Device 004: ID 05e3:0608 Genesys Logic, Inc. USB-2.0 4-Port HUB Bus 001 Device 009: ID 04d9:1503 Holtek Semiconductor, Inc. Shortboard Lefty Bus 001 Device 010: ID 046d:c05a Logitech, Inc. Optical Mouse M90  root@localhost:/home/marietto# adb devices List of devices attached  2  

数据/ app / com.opera.browser-2

  root@localhost:/home/marietto# lsusb  Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 001 Device 002: ID 148f:2573 Ralink Technology, Corp. RT2501/RT2573 Wireless Adapter Bus 001 Device 003: ID 0a5c:2121 Broadcom Corp. BCM2210 Bluetooth Bus 001 Device 004: ID 05e3:0608 Genesys Logic, Inc. USB-2.0 4-Port HUB Bus 001 Device 009: ID 04d9:1503 Holtek Semiconductor, Inc. Shortboard Lefty Bus 001 Device 010: ID 046d:c05a Logitech, Inc. Optical Mouse M90  root@localhost:/home/marietto# adb devices List of devices attached  3  

数据/数据/ com.opera.browser / files /

  root@localhost:/home/marietto# lsusb  Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 001 Device 002: ID 148f:2573 Ralink Technology, Corp. RT2501/RT2573 Wireless Adapter Bus 001 Device 003: ID 0a5c:2121 Broadcom Corp. BCM2210 Bluetooth Bus 001 Device 004: ID 05e3:0608 Genesys Logic, Inc. USB-2.0 4-Port HUB Bus 001 Device 009: ID 04d9:1503 Holtek Semiconductor, Inc. Shortboard Lefty Bus 001 Device 010: ID 046d:c05a Logitech, Inc. Optical Mouse M90  root@localhost:/home/marietto# adb devices List of devices attached  4  

系统信息

我想我在Android 7.1.1 扎根于Magisk,但股票rom

最近关闭的标签

不是我现在正在寻找的东西,但我偶然发现了那些未来观众的位置,以防未来的观众正在寻找它们:

  root@localhost:/home/marietto# lsusb  Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 001 Device 002: ID 148f:2573 Ralink Technology, Corp. RT2501/RT2573 Wireless Adapter Bus 001 Device 003: ID 0a5c:2121 Broadcom Corp. BCM2210 Bluetooth Bus 001 Device 004: ID 05e3:0608 Genesys Logic, Inc. USB-2.0 4-Port HUB Bus 001 Device 009: ID 04d9:1503 Holtek Semiconductor, Inc. Shortboard Lefty Bus 001 Device 010: ID 046d:c05a Logitech, Inc. Optical Mouse M90  root@localhost:/home/marietto# adb devices List of devices attached  5  

相关链接

  • 如何将所有打开的firefox选项卡导出到文本文件?已提出所以在一个活着的手机上,但也指出了文件所在的位置。相关文件称为 root@localhost:/home/marietto# lsusb Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 001 Device 002: ID 148f:2573 Ralink Technology, Corp. RT2501/RT2573 Wireless Adapter Bus 001 Device 003: ID 0a5c:2121 Broadcom Corp. BCM2210 Bluetooth Bus 001 Device 004: ID 05e3:0608 Genesys Logic, Inc. USB-2.0 4-Port HUB Bus 001 Device 009: ID 04d9:1503 Holtek Semiconductor, Inc. Shortboard Lefty Bus 001 Device 010: ID 046d:c05a Logitech, Inc. Optical Mouse M90 root@localhost:/home/marietto# adb devices List of devices attached 6
    歌剧似乎并不有用。 grepping root@localhost:/home/marietto# lsusb Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 001 Device 002: ID 148f:2573 Ralink Technology, Corp. RT2501/RT2573 Wireless Adapter Bus 001 Device 003: ID 0a5c:2121 Broadcom Corp. BCM2210 Bluetooth Bus 001 Device 004: ID 05e3:0608 Genesys Logic, Inc. USB-2.0 4-Port HUB Bus 001 Device 009: ID 04d9:1503 Holtek Semiconductor, Inc. Shortboard Lefty Bus 001 Device 010: ID 046d:c05a Logitech, Inc. Optical Mouse M90 root@localhost:/home/marietto# adb devices List of devices attached 7 对于"会话" 只查找 root@localhost:/home/marietto# lsusb Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 001 Device 002: ID 148f:2573 Ralink Technology, Corp. RT2501/RT2573 Wireless Adapter Bus 001 Device 003: ID 0a5c:2121 Broadcom Corp. BCM2210 Bluetooth Bus 001 Device 004: ID 05e3:0608 Genesys Logic, Inc. USB-2.0 4-Port HUB Bus 001 Device 009: ID 04d9:1503 Holtek Semiconductor, Inc. Shortboard Lefty Bus 001 Device 010: ID 046d:c05a Logitech, Inc. Optical Mouse M90 root@localhost:/home/marietto# adb devices List of devices attached 8 ,其中包含对我的目的没有任何有用。

  • 如何导出打开的Chrome选项卡列表?

承诺文件 root@localhost:/home/marietto# lsusb Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 001 Device 002: ID 148f:2573 Ralink Technology, Corp. RT2501/RT2573 Wireless Adapter Bus 001 Device 003: ID 0a5c:2121 Broadcom Corp. BCM2210 Bluetooth Bus 001 Device 004: ID 05e3:0608 Genesys Logic, Inc. USB-2.0 4-Port HUB Bus 001 Device 009: ID 04d9:1503 Holtek Semiconductor, Inc. Shortboard Lefty Bus 001 Device 010: ID 046d:c05a Logitech, Inc. Optical Mouse M90 root@localhost:/home/marietto# adb devices List of devices attached 9

sudo add-apt-repository ppa:nilarimogard/webupd8 sudo apt-get update sudo apt-get install android-tools-adb android-tools-fastboot 0 至少包含一些URL及其标题,由null字节分隔。 sudo add-apt-repository ppa:nilarimogard/webupd8 sudo apt-get update sudo apt-get install android-tools-adb android-tools-fastboot 1 输出不仅仅是打开的URL。和一些双重或不完全的人。 我将在下面用这个文件记录我的Journy。

查看 sudo add-apt-repository ppa:nilarimogard/webupd8 sudo apt-get update sudo apt-get install android-tools-adb android-tools-fastboot 2 显示它是二进制数据文件,但它包含可读字符串。使用 sudo add-apt-repository ppa:nilarimogard/webupd8 sudo apt-get update sudo apt-get install android-tools-adb android-tools-fastboot 3 打开它或查看 sudo add-apt-repository ppa:nilarimogard/webupd8 sudo apt-get update sudo apt-get install android-tools-adb android-tools-fastboot 4

  sudo add-apt-repository ppa:nilarimogard/webupd8 sudo apt-get update sudo apt-get install android-tools-adb android-tools-fastboot 5  

已经吐出了很多URL。但对我来说,该文件的结构实际上还没有明显。

一些条目前缀与 sudo add-apt-repository ppa:nilarimogard/webupd8 sudo apt-get update sudo apt-get install android-tools-adb android-tools-fastboot 6 sudo add-apt-repository ppa:nilarimogard/webupd8 sudo apt-get update sudo apt-get install android-tools-adb android-tools-fastboot 7 sudo add-apt-repository ppa:nilarimogard/webupd8 sudo apt-get update sudo apt-get install android-tools-adb android-tools-fastboot 8 sudo add-apt-repository ppa:nilarimogard/webupd8 sudo apt-get update sudo apt-get install android-tools-adb android-tools-fastboot 9 或根本没有。< BR /> 在某些条目中,"Reader_Mode_State" 是URL之后的第一行,在其他情况下,它是"Operaui:// startpage" ,并且在下面进一步跟随URL。

但是突出的是,URL似乎从 root@localhost:/home/marietto# adb version Android Debug Bridge version 1.0.31 0 root@localhost:/home/marietto# adb version Android Debug Bridge version 1.0.31 1 - 除非您有一些ftp或如此开放,我非常自信 没有。

  root@localhost:/home/marietto# adb version Android Debug Bridge version 1.0.31 2  

输出1506行。 有些链接是重复的,其他链接是链接我没有 关心。 例如 如:

  root@localhost:/home/marietto# adb version Android Debug Bridge version 1.0.31 3  

由于我不关心重复项,我们可以应用 root@localhost:/home/marietto# adb version Android Debug Bridge version 1.0.31 4 以将该号码降低到967个URL。 使用 root@localhost:/home/marietto# adb version Android Debug Bridge version 1.0.31 5 我们将达到833。 但两者仍然太多了。 在我看来,像歌剧会也在那里存储了标签的历史。

删除一些明显的不需要的线条给出523行,所以〜260个网址:

  root@localhost:/home/marietto# adb version Android Debug Bridge version 1.0.31 6  

作为考虑的目标号码:

  root@localhost:/home/marietto# adb version Android Debug Bridge version 1.0.31 7  

这意味着 - 假设这个目标号码是对打开的标签的估计很好 - 我有大约三十个URL太多。 我想我可以忍受。

english

I had more than 200 tabs open on opera and they would normally reopen again, even after reboots.

My phone broke, but I have a backup of the external SD Card, internal SD Card, and a backup from TWRP which is of a size of 23.7 GB but does not have an obviously accessible structure.

Following the advice from another QA, it is possible to concatenate the data.ext4.win000 to data.ext4.win009 files and access them as a tar archive (It's a good idea to cd to where you want the backup to be extracted to first):

bash cat data.ext4.win??? | tar xvfi -

What this does is concatenate each file matching the pattern data.ext4.win??? and then pipe the concatenated files to tar for extraction. the - as the filename tells tar to extract from stdin. The i option ignores zero blocks which will be in between each archive file concatenated.

In this example I used the ext4 formatted data partition. Change data.ext4 to match the partition you are extracting.

Although the tar command exits with

/data/magisk_backup_bd5d0aa87b96353c78a3bf3a455121d0c767089c/boot.img.gz tar: Exiting with failure status due to previous errors

it extracts quite a few files before this hapens.

Now that I have my /data directory again, I have access to /data/data/com.opera.browser and /data/app/com.opera.browser-2. What do I do with them to extract a list of urls that were open?

Directory Structures

data/data/com.opera.browser

xe2x94x9cxe2x94x80xe2x94x80xe2x94x80app_opera xe2x94x82   xe2x94x9cxe2x94x80xe2x94x80xe2x94x80Application Cache xe2x94x82   xe2x94x82   xe2x94x94xe2x94x80xe2x94x80xe2x94x80Cache xe2x94x82   xe2x94x82       xe2x94x94xe2x94x80xe2x94x80xe2x94x80index-dir xe2x94x82   xe2x94x9cxe2x94x80xe2x94x80xe2x94x80blob_storage xe2x94x82   xe2x94x82   xe2x94x94xe2x94x80xe2x94x80xe2x94x809b46839e-470e-4a3a-aa32-e9bc919a25f0 xe2x94x82   xe2x94x9cxe2x94x80xe2x94x80xe2x94x80databases xe2x94x82   xe2x94x9cxe2x94x80xe2x94x80xe2x94x80databases-incognito xe2x94x82   xe2x94x9cxe2x94x80xe2x94x80xe2x94x80File System xe2x94x82   xe2x94x82   xe2x94x9cxe2x94x80xe2x94x80xe2x94x80026 xe2x94x82   xe2x94x82   xe2x94x82   xe2x94x94xe2x94x80xe2x94x80xe2x94x80t xe2x94x82   xe2x94x82   xe2x94x82       xe2x94x94xe2x94x80xe2x94x80xe2x94x80Paths xe2x94x82   xe2x94x82   xe2x94x94xe2x94x80xe2x94x80xe2x94x80Origins xe2x94x82   xe2x94x9cxe2x94x80xe2x94x80xe2x94x80GCM Store xe2x94x82   xe2x94x82   xe2x94x94xe2x94x80xe2x94x80xe2x94x80Encryption xe2x94x82   xe2x94x9cxe2x94x80xe2x94x80xe2x94x80GPUCache xe2x94x82   xe2x94x82   xe2x94x94xe2x94x80xe2x94x80xe2x94x80index-dir xe2x94x82   xe2x94x9cxe2x94x80xe2x94x80xe2x94x80IndexedDB xe2x94x82   xe2x94x82   xe2x94x9cxe2x94x80xe2x94x80xe2x94x80https_hackernoon.com_0.indexeddb.leveldb xe2x94x82   xe2x94x82   xe2x94x9cxe2x94x80xe2x94x80xe2x94x80https_mobile.twitter.com_0.indexeddb.leveldb xe2x94x82   xe2x94x82   xe2x94x9cxe2x94x80xe2x94x80xe2x94x80https_www.epicgames.com_0.indexeddb.leveldb xe2x94x82   xe2x94x82   xe2x94x94xe2x94x80xe2x94x80xe2x94x80https_www.independent.co.uk_0.indexeddb.leveldb xe2x94x82   xe2x94x9cxe2x94x80xe2x94x80xe2x94x80Local Storage xe2x94x82   xe2x94x82   xe2x94x94xe2x94x80xe2x94x80xe2x94x80leveldb xe2x94x82   xe2x94x9cxe2x94x80xe2x94x80xe2x94x80paks xe2x94x82   xe2x94x9cxe2x94x80xe2x94x80xe2x94x80Platform Notifications xe2x94x82   xe2x94x9cxe2x94x80xe2x94x80xe2x94x80saved_pages xe2x94x82   xe2x94x9cxe2x94x80xe2x94x80xe2x94x80Service Worker xe2x94x82   xe2x94x82   xe2x94x9cxe2x94x80xe2x94x80xe2x94x80CacheStorage xe2x94x82   xe2x94x82   xe2x94x82   xe2x94x9cxe2x94x80xe2x94x80xe2x94x805a6f7e336992bc24678958dc2f1f9b9eec83593b xe2x94x82   xe2x94x82   xe2x94x82   xe2x94x82   xe2x94x9cxe2x94x80xe2x94x80xe2x94x80281ffb34-a074-4397-a60c-e3dc55aee5e5 xe2x94x82   xe2x94x82   xe2x94x82   xe2x94x82   xe2x94x82   xe2x94x94xe2x94x80xe2x94x80xe2x94x80index-dir xe2x94x82   xe2x94x82   xe2x94x82   xe2x94x82   xe2x94x94xe2x94x80xe2x94x80xe2x94x808d34090e-e00a-4f69-9450-bbe1b4b0dc9d xe2x94x82   xe2x94x82   xe2x94x82   xe2x94x82       xe2x94x94xe2x94x80xe2x94x80xe2x94x80index-dir xe2x94x82   xe2x94x82   xe2x94x82   xe2x94x9cxe2x94x80xe2x94x80xe2x94x8096f3041722d8f6857b95786ee88fa6a107a86943 xe2x94x82   xe2x94x82   xe2x94x82   xe2x94x82   xe2x94x94xe2x94x80xe2x94x80xe2x94x8011ccf6ea-9e2a-4648-8c61-a635e1cca5c5 xe2x94x82   xe2x94x82   xe2x94x82   xe2x94x82       xe2x94x94xe2x94x80xe2x94x80xe2x94x80index-dir xe2x94x82   xe2x94x82   xe2x94x82   xe2x94x94xe2x94x80xe2x94x80xe2x94x80e60030e2e5440743857a39cacd108634434c91f1 xe2x94x82   xe2x94x82   xe2x94x82       xe2x94x9cxe2x94x80xe2x94x80xe2x94x800045349f-4331-4037-bf9d-e9711e515a08 xe2x94x82   xe2x94x82   xe2x94x82       xe2x94x82   xe2x94x94xe2x94x80xe2x94x80xe2x94x80index-dir xe2x94x82   xe2x94x82   xe2x94x82       xe2x94x9cxe2x94x80xe2x94x80xe2x94x804a447cca-f7ca-41f1-9464-e40337cd7ed1 xe2x94x82   xe2x94x82   xe2x94x82       xe2x94x82   xe2x94x94xe2x94x80xe2x94x80xe2x94x80index-dir xe2x94x82   xe2x94x82   xe2x94x82       xe2x94x94xe2x94x80xe2x94x80xe2x94x80907b2396-da18-4880-a0df-e3608abac640 xe2x94x82   xe2x94x82   xe2x94x82           xe2x94x94xe2x94x80xe2x94x80xe2x94x80index-dir xe2x94x82   xe2x94x82   xe2x94x9cxe2x94x80xe2x94x80xe2x94x80Database xe2x94x82   xe2x94x82   xe2x94x94xe2x94x80xe2x94x80xe2x94x80ScriptCache xe2x94x82   xe2x94x82       xe2x94x94xe2x94x80xe2x94x80xe2x94x80index-dir xe2x94x82   xe2x94x9cxe2x94x80xe2x94x80xe2x94x80Session Storage xe2x94x82   xe2x94x9cxe2x94x80xe2x94x80xe2x94x80shared_proto_db xe2x94x82   xe2x94x82   xe2x94x94xe2x94x80xe2x94x80xe2x94x80metadata xe2x94x82   xe2x94x9cxe2x94x80xe2x94x80xe2x94x80Sync Data xe2x94x82   xe2x94x82   xe2x94x94xe2x94x80xe2x94x80xe2x94x80LevelDB xe2x94x82   xe2x94x94xe2x94x80xe2x94x80xe2x94x80VideoDecodeStats xe2x94x9cxe2x94x80xe2x94x80xe2x94x80app_optimized xe2x94x9cxe2x94x80xe2x94x80xe2x94x80app_textures xe2x94x9cxe2x94x80xe2x94x80xe2x94x80app_webview xe2x94x82   xe2x94x9cxe2x94x80xe2x94x80xe2x94x80blob_storage xe2x94x82   xe2x94x82   xe2x94x94xe2x94x80xe2x94x80xe2x94x803f7cc261-4c0e-41cc-947b-2dc712733f49 xe2x94x82   xe2x94x9cxe2x94x80xe2x94x80xe2x94x80GPUCache xe2x94x82   xe2x94x82   xe2x94x94xe2x94x80xe2x94x80xe2x94x80index-dir xe2x94x82   xe2x94x94xe2x94x80xe2x94x80xe2x94x80Local Storage xe2x94x82       xe2x94x94xe2x94x80xe2x94x80xe2x94x80leveldb xe2x94x9cxe2x94x80xe2x94x80xe2x94x80cache xe2x94x82   xe2x94x9cxe2x94x80xe2x94x80xe2x94x80cache xe2x94x82   xe2x94x82   xe2x94x94xe2x94x80xe2x94x80xe2x94x80index-dir xe2x94x82   xe2x94x9cxe2x94x80xe2x94x80xe2x94x80Crashpad xe2x94x82   xe2x94x82   xe2x94x9cxe2x94x80xe2x94x80xe2x94x80attachments xe2x94x82   xe2x94x82   xe2x94x9cxe2x94x80xe2x94x80xe2x94x80completed xe2x94x82   xe2x94x82   xe2x94x9cxe2x94x80xe2x94x80xe2x94x80new xe2x94x82   xe2x94x82   xe2x94x94xe2x94x80xe2x94x80xe2x94x80pending xe2x94x82   xe2x94x9cxe2x94x80xe2x94x80xe2x94x80crash_dumps xe2x94x82   xe2x94x9cxe2x94x80xe2x94x80xe2x94x80distiller xe2x94x82   xe2x94x82   xe2x94x94xe2x94x80xe2x94x80xe2x94x80index-dir xe2x94x82   xe2x94x94xe2x94x80xe2x94x80xe2x94x80okhttp xe2x94x9cxe2x94x80xe2x94x80xe2x94x80code_cache xe2x94x9cxe2x94x80xe2x94x80xe2x94x80databases xe2x94x9cxe2x94x80xe2x94x80xe2x94x80files xe2x94x82   xe2x94x9cxe2x94x80xe2x94x80xe2x94x80AFRequestCache xe2x94x82   xe2x94x9cxe2x94x80xe2x94x80xe2x94x80ds xe2x94x82   xe2x94x82   xe2x94x9cxe2x94x80xe2x94x80xe2x94x8010 xe2x94x82   xe2x94x82   xe2x94x94xe2x94x80xe2x94x80xe2x94x80E xe2x94x82   xe2x94x9cxe2x94x80xe2x94x80xe2x94x80images xe2x94x82   xe2x94x82   xe2x94x94xe2x94x80xe2x94x80xe2x94x80share xe2x94x82   xe2x94x9cxe2x94x80xe2x94x80xe2x94x80keychain xe2x94x82   xe2x94x82   xe2x94x94xe2x94x80xe2x94x80xe2x94x800 xe2x94x82   xe2x94x9cxe2x94x80xe2x94x80xe2x94x80reading xe2x94x82   xe2x94x94xe2x94x80xe2x94x80xe2x94x80recently_closed_tabs xe2x94x9cxe2x94x80xe2x94x80xe2x94x80no_backup xe2x94x94xe2x94x80xe2x94x80xe2x94x80shared_prefs 

data/app/com.opera.browser-2

xe2x94x9cxe2x94x80xe2x94x80xe2x94x80lib xe2x94x82   xe2x94x9cxe2x94x80xe2x94x80xe2x94x80arm xe2x94x82   xe2x94x94xe2x94x80xe2x94x80xe2x94x80arm64 xe2x94x94xe2x94x80xe2x94x80xe2x94x80oat     xe2x94x9cxe2x94x80xe2x94x80xe2x94x80arm     xe2x94x94xe2x94x80xe2x94x80xe2x94x80arm64 

data/data/com.opera.browser/files/

# 332 files of the nameformat "thumbnail_-214748????" # 3   files of the nameformat "searchengine_j_<UUID>" AFRequestCache              appstate.bin                     audience_network.dex      cards_settings.dat            ds                                   favorite_25                      favorite_29                      favorite_31                      favorites.json                   images                            keychain                         newsfeedback                  permissions.bin                reading                           recently_closed_tabs        reksio.ini    

System Info

I think I was on Android 7.1.1
Rooted with Magisk, but stock ROM

Recently Closed Tabs

Not what I am looking for right now, but I stumbled upon the location of those, in case a future viewer is looking for them:

data/data/com.opera.browser/files/recently_closed_tabs/state-2147481796 

Related Links

  • How can I export all my open Firefox Tabs to a text file? is posed about doing so on a living phone, but also points out where the file is located. The relevant file is called sessionstore.js.
    That does not seem useful for opera. grepping find for "session" only finds shared_prefs/sessionrestore.xml which contains nothing useful for my purposes.

  • How can I export the list of open Chrome tabs?

Promising Files appstate.bin

data/data/com.opera.browser/files/appstate.bin contains at least some urls and their titles, separated by a null-byte. strings appstate.bin outputs more than just the urls that were open though. And some of those doubly or not completely. I shall document my journy with this file below.

Looking at data/data/com.opera.browser/files/appstate.bin shows that it's a binary data file, but it contains readable strings. Open it with vim appstate.bin or look at hexdump -C appstate.bin.

strings appstate.bin | grep -A3 reader_mode_state 

already spits out quite a few urls. But it's not yet obvious to me how the structure of that file actually works.

Some entries prefix the url with l or O or K or ] or not at all.
In some entries the first line after "reader_mode_state" is the url, in others it is "operaui://startpage" and the url follows further below.

But what stands out is that the urls all seem to start with http or https - unless you had some ftp or such open, which I'm pretty confident I did not.

strings appstate.bin | grep http 

outputs 1506 lines though. some links are duplicates, others are links I do not care about. e.g. like so:

Qhttps://www.linuxuprising.com/2018/06/fix-no-sound-dummy-output-issue-in.html?m=1 Qhttps://www.linuxuprising.com/2018/06/fix-no-sound-dummy-output-issue-in.html?m=1 https://www.linuxuprising.com https://www.linuxuprising.com https://www.linuxuprising.com https://www.linuxuprising.com https://www.linuxuprising.com https://www.linuxuprising.com https://www.linuxuprising.com https://www.linuxuprising.com https://www.linuxuprising.com https://www.linuxuprising.com https://www.linuxuprising.com 

Since I don't care about duplicates, we can apply uniq to reduce that number down to 967 urls. With sort -u we would get down to 833 instead. But both are still too many. It seems to me like opera also stores the tab's history in there.

Removing some obviously unwanted lines gives 523 lines, so ~260 urls:

 strings appstate.bin | grep -v -e 'operaui://startpage' -e 'Speed Dial' | grep -A2 reader_mode_state | uniq | grep -v 'reader_mode_state' 

As a target number to consider:

strings appstate.bin | grep reader_mode_state | wc -l 231 

That means - assuming this target number is a good estimate of how many tabs were open - that I have about thirty urls too many. I think I can live with that.

     

回答列表

0
 
vote
vote
最佳答案
 

在新手机上使用

  1. 在新手机上安装Opera
  2. 将旧 adb shell ip addr show1 复制到该位置的新手机。 (需要root)。
  3. 开歌。存在所有选项卡(但必须再次加载)。

导出URL作为列表

这将发现您希望的URL稍微增加。可能是选项卡历史的东西。

adb shell ip addr show2 包含该数据。要获取仅限URL的列表,可以运行

  adb shell ip addr show3  

如果您关注URL的顺序,请使用 adb shell ip addr show4 而不是 adb shell ip addr show5

 

Use on New Phone

  1. Install opera on the new phone
  2. Copy the old /data/data/com.opera.browser/files/appstate.bin to the new phone at that location. (Requires root).
  3. Open Opera. All the Tabs exist (but will have to be loaded again).

Export URLs as List

This will find slightly more urls that you were hoping for. Probably something from the tab's history.

data/data/com.opera.browser/files/appstate.bin contains that data. To get a list of only the URLs, you can run

strings appstate.bin | \ grep -v -e 'operaui://startpage' -e 'Speed Dial' | \ grep -A2 reader_mode_state | \ sort -u | grep -v 'reader_mode_state' | grep -oh "http.*$" 

If you care about the order of the urls, use uniq instead of sort -u.

 
 

相关问题

1  无法关闭浏览器选项卡  ( Cant close browser tabs ) 
我有一个带有lg g pad的问题。 Chrome 87.0.4280.101 Firefox Daylight 84.1.2(Build#2015783145) OS Android 5.1.1 LG-V940N Build / LMY47V 除了电子邮件,浏览和netflix之外,我不做多少事情。一切正...

10  Chrome浏览器中打开了多少个选项卡? (高于100)  ( How many tabs are open in chrome browser above 100 ) 
当标签的数量达到100时,标签计数器变成笑脸:D 我希望知道打开了多少个选项卡,而无需执行手动计数。有没有办法? ...

1  禁用Chrome选项卡组  ( Disabling chrome tab groups ) 
我的手机(三星S7运行Android 8.0.0)最近更新到Chrome 85版,并带来了Tab组。 我相信这是一个很多欢迎的东西,但我很少有超过8个选项卡随时打开。因此,将标签组的能力对我来说几乎没有意义。 不幸的是,我似乎无法避免它。当持有链接时,"在新选项卡中打开" 已成为"在组中的新选项卡中打开" ,并且没有...

0  三星S20上的Chrome选项卡  ( Chrome tabs on samsung s20 ) 
当我在Chrome上使用我的下拉条时,有几百个标签打开。我触摸了点并关闭了所有标签。然后我收到了一条浏览器不起作用的消息。我重新启动了我的手机,清除了历史,清除了缓存,最重要的,每次我打开Chrome浏览器都有数百个选项卡打开。有人能帮助我解决这个问题吗?谢谢 ...

0  如何在手机上关闭Android的Chrome选项卡? [复制]  ( How do i close all or many at once chrome tabs on android on a phone ) 
这个问题已经在这里有答案: 如何关闭Android的Chrome中的所有选项卡? (3个答案) ...

10  如何将所有打开的Firefox选项卡导出到文本文件?  ( How can i export all my open firefox tabs to a text file ) 
我一直在尝试找到一种在Android Firefox浏览器中导出我当前打开的选项卡的方法。不幸的是,默认浏览器安装似乎是不可能的,并且从命令行中很难做到Firefox正在使用的SQLite3数据库中,包含太多表,并且很难找到正确的查询。 显然这对于​​Google Chrome使用这些黑客。 我希望在文本文件中的...

0  在Samsung Tab S2上无法在Google Chrome中打开/关闭/切换选项卡  ( Cant open close switch tabs in google chrome on a samsung tab s2 ) 
我一直在谷歌Chrome上有一个问题,大约需要3-4个月,在一段时间之后,使用了打开或删除另一个选项卡的能力被禁用或忽略应用程序。我可以使用3个垂直的buton菜单打开一个新标签,但它不会使用选项卡旁边的加号。如果我完全退出Chrome(通过在您可以看到所有先前打开的平板电脑应用程序的区域中播换Chrome框)然后重...

1  手机砖后如何从备份数据恢复开放的歌剧选项卡?  ( How to recover open opera tabs from backup data after phone bricked ) 
我在歌剧上打开了200多个选项卡,它们通常会再次重新开放,即使重新启动后也会重新开放。 我的手机打破了,但我有一个外部SD卡,内部SD卡和TWRP的备份,尺寸为23.7 GB,但没有明显可访问的结构。 从另一个qa ,可以连接 data.ext4.win000 到 data.ext4.win009 文件并将它们作为t...

0  如何在Chromer中访问历史记录或最近关闭的选项卡  ( How to access history or recently closed tabs in chromer ) 
我在web头模式下使用chromer。偶尔,我所有的网头都会消失,大概是由于崩溃。过去有时,染色体建议我重新启动但不是今天时重新打开旧标签。 是否有一种方法可以使其重新打开最近关闭的选项卡而不会提示?我找不到菜单中的任何东西。 ...

1  如何回到Chrome上的旧选项卡切换器?  ( How do i go back to the old tab switcher on chrome ) 
我不知道什么时候发生这种情况,但在最新版本的谷歌Chrome for Android中,我无法从"打开选项卡" 按钮上滑动,以获取所有打开选项卡的卡UI并切换到或关闭标签我想要。 当我从"打开选项卡" 按钮向下滑动时,我看到的是一个丑陋的列表,其中包含所有打开选项卡列表,它始终从顶部开始,所以我一直滚动到最近打开的标...




© 2022 it.wenda123.org All Rights Reserved. 问答之家 版权所有