You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何从ImageMagick输出中仅提取十六进制颜色值?

如何提取ImageMagick输出中的十六进制颜色值?

当然有办法!你可以把ImageMagick的输出通过管道传给文本处理工具,直接过滤出需要的十六进制颜色值。这里有几种简单好用的方案:

方案1:使用grep + awk组合

这是最直观的方式,先匹配包含十六进制颜色的行,再提取颜色值:

convert MYIMAG.JPG +dither -colors 10 -unique-colors | grep -E '#[0-9A-Fa-f]{6}' | awk '{print $1}' | tr '\n' ' ' && echo
  • grep -E '#[0-9A-Fa-f]{6}':筛选出包含6位十六进制颜色码的行
  • awk '{print $1}':提取每行的第一个字段(也就是我们要的#开头的颜色值)
  • tr '\n' ' ':把每行的颜色值换成空格分隔的格式
  • && echo:最后添加一个换行,让输出更整洁

方案2:使用sed直接替换提取

用sed的正则替换功能,直接捕获并提取颜色值:

convert MYIMAG.JPG +dither -colors 10 -unique-colors | sed -n 's/.*\(#......\).*/\1/p' | tr '\n' ' ' && echo
  • sed -n 's/.*\(#......\).*/\1/p':只保留每行中#后面的6个字符(也就是十六进制颜色码),并打印出来
  • 后续的tr和echo作用和方案1一致,用来统一格式

运行任意一种命令后,你都会得到想要的输出:
#453B28 #685F51 #8A765C #827F6B #A48F72 #D2AC61 #B1A597 #D4B693 #DBBD9D #E4C5A1

内容的提问来源于stack exchange,提问作者user7684764

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 08:27:23