KeePass
密码管理器




Package

XML替换功能


救命  一般信息

XML Replace是一个强大的功能,它通过操纵XML表示来修改数据库。

KeePass在内存中创建当前数据库的KDBX XML DOM,执行用户指定的操作(例如删除节点或替换文本),尝试加载修改后的XML,并将当前数据库与修改后的数据库合并。

警告 这是专家的一项功能。谨慎使用!

可以通过“工具”→“数据库工具”→“XML替换”调用XML替换。

一些可能有助于使用XPath和正则表达式的链接:

  • XPath的:
    • 维基百科:XPath
    • MSDN:XPath参考
    • MSDN:XPath示例
  • 常用表达:
    • MSDN:正则表达式语言

KeePass保护历史条目; XML Replace不能用于修改这些。此外,可以忽略对数据库属性(数据库名称/描述等)的任何更改。

救命  用法示例

替换所有条目标题和注释中的文本
选择节点: //Entry/String[Key='Title' or Key='Notes']/Value
行动: 替换数据
数据: 内部文字
找什么: TheTextToFind
用。。。来代替: TheReplacement
在所有条目标题和注释中,这取代了所有出现TheTextToFind的 TheReplacement

通过HTTPS URL替换所有HTTP URL
选择节点: //Entry/String[Key='URL']/Value
行动: 替换数据
数据: 内部文字
找什么: ^http:
用。。。来代替: https:
常用表达: 活性
在所有条目URL字段中,这将替换HTTPS URL中的所有HTTP URL。

替换组图标
选择节点: //Group/IconID
行动: 替换数据
数据: 内部文字
找什么: ^48$
用。。。来代替: 36
常用表达: 活性
这会将ZIP包图标分配给当前具有已关闭文件夹作为图标的所有组。

可以在图标选择器对话框中找到所有图标ID。

按名称删除条目字符串
选择节点: //Entry/String[Key='TheName']
行动: 删除节点
删除所有名为的条目字符串 TheName

按名称扩展名删除条目附件
选择节点: //Entry/Binary[substring(Key, string-length(Key) - 3) = '.jpg']
行动: 删除节点
删除名称以“.jpg”结尾的所有条目附件。

在“ 3”的节点选择XPath表达式的长度“ .jpg” – 1。如果你如想搜索具有在“结尾的名称附件.abcde”,你需要更换“ 3”由“ 5”。

重置背景颜色
选择节点: //Entry/BackgroundColor
行动: 删除节点
将所有条目的背景颜色设置为默认值(透明/交替)。

禁用具有空字段的条目的自动类型
选择节点: //Entry/String[(Key='UserName' or Key='Password') and Value='']/../AutoType/Enabled
行动: 替换数据
数据: 内部文字
找什么: True
用。。。来代替: False
对具有空用户名字段或空密码字段的所有条目禁用自动类型。

转换{DELAY=为大写
选择节点: //DefaultSequence | //KeystrokeSequence
行动: 替换数据
数据: 内部文字
找什么: {DELAY=
用。。。来代替: {DELAY=
{DELAY=自动类型序列覆盖和关联中的所有代码转换为大写(默认情况下,区分大小写选项已关闭,因此“查找内容”文本与所有情况匹配)。

在KeePass 2.x中,占位符不区分大小写。但是,此XML替换操作可能有助于准备以下示例({DELAY=以区分大小写的方式匹配 )。

{DELAY=50}没有a的所有序列前置{DELAY=
选择节点: (//DefaultSequence | //KeystrokeSequence)[not(contains(., '{DELAY=')) and (. != '')]
行动: 替换数据
数据: 内部文字
找什么: ^(.*)$
用。。。来代替: {DELAY=50}$1
常用表达: 活性
将a添加{DELAY=50}到所有自动类型序列覆盖和不包含任何{DELAY=已自动且不为空的关联 。

请注意,节点选择区分大小写(与数据区分大小写选项无关),因此{DELAY=在执行此操作之前,您需要确保所有 代码都是大写的。这可以例如使用上面提到的XML替换操作来完成 。

改变{DELAY=价值观
选择节点: //DefaultSequence | //KeystrokeSequence
行动: 替换数据
数据: 内部文字
找什么: \{DELAY=[\d\s]*\}
用。。。来代替: {DELAY=50}
常用表达: 活性
{DELAY=自动类型序列覆盖和关联中的所有代码的值设置为50。

从所有序列中删除{DELAY=x}
选择节点: //DefaultSequence | //KeystrokeSequence
行动: 替换数据
数据: 内部文字
找什么: \{DELAY=[\d\s]*\}
用。。。来代替: (留空)
常用表达: 活性
从所有自动类型序列中删除所有代码。{DELAY=x}

重置包含的默认序列 {DELAY=
选择节点: //DefaultSequence[contains(., '{DELAY=')]
行动: 删除节点
如果已在“覆盖默认序列”字段中指定了序列(在条目对话框中)并且它包含 {DELAY=,则序列将被重置,即激活“从组继承默认自动类型序列”选项。

为所有条目添加自动类型关联
选择节点: //Entry/AutoType
行动: 替换数据
数据: 外部XML
找什么: </AutoType>\Z
用。。。来代替: <Association><Window>* - Notepad</Window><KeystrokeSequence>{PASSWORD}</KeystrokeSequence></Association></AutoType>
常用表达: 活性
向所有条目添加自动类型关联:窗口标题’ * - Notepad‘与序列’ {PASSWORD}‘ 相关联。

将条目URL复制到标题字段中
选择节点: //Entry
行动: 替换数据
数据: 内部XML
找什么: (?s)(<Key>Title</Key>\s*)(<Value>.*?</Value>|<Value\s*/>)(.*?<Key>URL</Key>\s*)(<Value>.*?</Value>|<Value\s*/>)
用。。。来代替: $1$4$3$4
区分大小写: 活性
常用表达: 活性
将条目URL复制到条目的标题字段中(覆盖标题字段中的任何现有数据)。

将条目标题复制到空的用户名字段中
选择节点: //Entry/String[Key='UserName' and Value='']/..
行动: 替换数据
数据: 内部XML
找什么: (?s)(<Key>Title</Key>\s*?<Value>)(.*?)(</Value>.+?<Key>UserName</Key>\s*?)<Value />
用。。。来代替: $1$2$3<Value>$2</Value>
区分大小写: 活性
常用表达: 活性
如果此字段为空,则将条目标题复制到条目的用户名字段中。

确保第一行不为空
选择节点: //Entry/String/Value
行动: 替换数据
数据: 内部文字
找什么: (?s)^(\r?\n)
用。。。来代替: --$1
常用表达: 活性
对于所有多行字段,--如果此行为空且值至少有两行,则将“ ‘插入字段值的第一行。例如,

样本数据

被替换为

– 

样本数据

上一页:
下一页:


沪ICP备19023926号-2 Copyright © 2003-2019 Dominik Reichl, [联系我们 / 版本说明] [团队 & 隐私政策]