Google chrome Chrome开发工具的代码片段保存在哪个文件中?

Google chrome Chrome开发工具的代码片段保存在哪个文件中?,google-chrome,google-chrome-devtools,code-snippets,Google Chrome,Google Chrome Devtools,Code Snippets,据我所知,个人数据总是保存在个人资料路径中,可以在chrome://version. 我在Chrome开发工具中添加了许多代码片段,并希望对它们进行备份 但是我找不到一个在这个路径下保存数据片段的文件 有人知道吗?请告诉我。非常感谢 编辑:此答案已过期,代码段不再保存在本地存储中 请看 对于chrome的旧版本,这可能会起作用。 它存储在这里C:\Users\Webdev\AppData\Local\Google\Chrome\User Data\Default\Local Storage\Ch

据我所知,个人数据总是保存在个人资料路径中,可以在chrome://version.

我在Chrome开发工具中添加了许多代码片段,并希望对它们进行备份

但是我找不到一个在这个路径下保存数据片段的文件


有人知道吗?请告诉我。非常感谢

编辑:此答案已过期,代码段不再保存在本地存储中

请看

对于chrome的旧版本,这可能会起作用。 它存储在这里C:\Users\Webdev\AppData\Local\Google\Chrome\User Data\Default\Local Storage\Chrome-devtools\u devtools\u 0.localstorage。 但我不认为你可以从文件路径查看它

您可以通过执行以下操作查看它。 打开devtools,然后前往chrome://inspect,在“其他”标题下,您应该会看到刚刚打开的devtools面板url,该url以chrome开头-devtools://dev. 通过单击“检查”链接进行检查。 应打开一个新的devtools窗口,在resources选项卡下,转到localstorage,其中有一个 键称为scriptSnippets,这是它保存的位置。只需复制并粘贴它,或者使用控制台面板预先修改输出

希望这有帮助

编辑(2016年1月)警告:我只能从最近的否决票中假设这不再有效。我会在有机会的时候更新

TL;博士
  • 代码段存储为sqlite文件
  • 您可以将它们提取为
    [{id:n,name:'foo.js',content:“The script”}]
  • OSX的说明如下
在OS X上,假设您安装了sqlite命令行客户端(我已经安装了一个,我不记得显式安装了一个),您会发现它是这样的:

#如果您不知道Chrome配置文件是什么,您可能会使用配置文件1,因此: cd~/Library/Application\Support/Google/Chrome/Profile\1/Local\Storage

在此目录中,您应该有一个名为
chrome-devtools\u devtools\u 0.localstorage的文件,如果是这样,您应该能够执行以下操作:

sqlite3 chrome-devtools\u devtools\u 0.localstorage
…您应该在sqlite shell中,它是这样开始的:

SQLite version 3.7.13 2012-07-17 17:46:21
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite>
您可以执行
.tables
以查看此文件中的表格:

sqlite>.tables
项目表
然后您可以执行此操作以查看该表中的列名:

PRAGMA表信息(ItemTable);
由于localStorage只是一个键/值存储,因此此表非常简单:

0|key|TEXT|0||0
1|value|BLOB|1||0
更具启发性的是看到关键名称:

select key from ItemTable;
你应该看到这样的东西:

SQLite version 3.7.13 2012-07-17 17:46:21
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite>
文件系统映射
显示高级HeapSnapshot属性
lastDockState
ResourcesRargerows
网络资源类型筛选器
pauseOnCaughtException
showInheritedComputedStyleProperties
元素SPANELSPLITVIEWSTATE
已切换filterBar网络面板
网络日志列可视性
networkPanelSplitViewState
SourceSpanedBuggerSideBarSplitViewState
pauseOnExceptionEnabled
表语
断点
合并历史
DOM断点
督察:出票人名单
InspectorView.splitViewState
WebInspector.Drawer.lastSelectedView
当前dockstate
编者Rawersplitviewstate
实验
检查员版本
lastActivePanel
sourcesPanelSplitViewState
sourcesPanelNavigatorSplitViewState
脚本片段\u lastIdentifier
以前查看的文件
修订历史
修订历史|脚本片段| 1 | 20267.2 | 1410876616909
脚本片段
代码片段位于
scriptsSnippets
中。当我开始这样做的时候,我没有任何代码片段,所以我没有看到这把钥匙。在创建我的第一个代码片段时,出现了键。接下来我做了:

select*from ItemTable,其中key='scriptSnippets';

scriptSnippets |[{“id”:“1”,“name”:“SnipFoo.js”,“content”:“/**\n*@license\n*Lo Dash 2.4.1(自定义版本)\N*Bug:'LoaseMealth-o/Dist/Loasy.js'n*版权2012-2013基于Duj.j.1.5.2\N*版权所有的2009年-2013年Jeremy Ashkenas的Dojo Foundation \N*,Debug云和调查记者和编辑n*在MIT许可证\n*/\n下可用;(函数){\n\n/**在ES5之前的环境中用作`未定义'的安全引用*/\n var undefined;\n\n/**用于池内部使用的数组和对象*/\n var arrayPool=[],\n objectPool=[];\n\n/**用于生成唯一的ID*/\n var idCounter=0;\n\n/**用于为键添加前缀,以避免“prototype”和“Object.prototype”*/\n var keyPrefix=+new Date+”;\n\n/**用作对大型数组启用优化时的大小*/\n var largearysize=75;\n\n/**用作“数组”的最大大小Pool`和`objectPool`*/\n var maxPoolSize=40;\n\n/**用于检测和测试空格*/\n var whitespace=(\n//空格\n'\\t\\x0B\\f\\xA0\\ufeff'+\n\n//行终止符\n'\\n\\r\\u2028\\u2029'+\n\n//unicode类别\“Zs\“空间分隔符\n'\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\
…等等。请注意,您将看到多个版本的代码段。我刚刚在上面提到的新代码段中粘贴了
lodash.js
,并且已经有两次了

那么,如何真正从中获取脚本呢?一旦获得
字段,这只是一个JSON数组,其中有一个snippet
id
name
content
。因此,创建一个SQL脚本,从命令行传递到
sqlite3
,如下所示:

SQLite version 3.7.13 2012-07-17 17:46:21
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite>
showSnippets.txt
然后像这样输入脚本:

SQLite version 3.7.13 2012-07-17 17:46:21
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite>
sqlite3 chrome-devtools\u devtools\u 0.localstorage
如果你这样做的话,看起来会更漂亮一些:

sqlite3 chrome-devtools_devtools_0.localstorage
从Chrome 47(大约)开始,代码片段不再可用