在 Linux 下,strings 命令用于从二进制文件或数据中抽取可打印字符串。经常需要过滤结果,常见做法有几种:
grep 过滤(最常用)strings file | grep "keyword"
只显示包含 keyword 的字符串。
示例:
strings app | grep "password"
strings app | grep -i "error"
strings app | grep -C 2 "main"
grep -E(正则)strings app | grep -E "version[0-9]+"
awk 过滤比如只显示长度大于 10 的字符串:
strings app | awk 'length($0) > 10'
sed 处理/过滤删除空行或特定内容:
strings app | sed '/^$/d'
strings 自身行为(减少结果)strings -n 8 file
只显示长度 ≥ 8 的字符串。
strings -e l file # 16-bit little-endian
查找二进制中的 URL:
strings app | grep -E "https?://"
查找版本信息:
strings app | grep -i version
如果你有具体场景(比如过滤日志、分析病毒、提取配置),可以告诉我,我给你更精确的命令。