可以用grep搜索base64吗?

可以用grep搜索base64吗?

是否可以使用 grep 搜索 Base64 字符串?假设我有一个文本文件列表,我想找到其中包含的所有 Base64 字符串;有什么办法可以搜索到它们吗?我的意思是我知道它们通常以=or结尾==,并且它们也有与什么相关的字节序列它们被编码为的字母在 base64 字符串内。但至于一般搜索它们(在不知道编码内容的情况下),我真的不知道该怎么做。

答案1

您可以查找仅由有效 Base64 字符组成的字符串,并根据需要使用正确的结构和填充:

grep -E '[A-Za-z0-9+/]{4}*([A-Za-z0-9+/]{4}|[A-Za-z0-9+/]{3}=|[A-Za-z0-9+/]{2}==)'

这将查找任意数量的由四个 Base64 字符组成的序列,后跟另外四个字符,或三个带有单个填充字符的序列,或者两个带有两个填充字符的序列。

相关内容