【发布时间】:2010-02-17 17:04:21
【问题描述】:
过去我问过这个问题。但不知何故我没有给出完整的输入。输入是一个日志文件。我正在尝试使用 sed 替换信用卡号的最后四位以外的所有数字。
sed -e :a -e "s/[0-9]\([0-9]\{4\}\)/\*\1/;ta" $today_temp_log
这个表达式确实有效,但它不仅替换了信用卡号码,还替换了一些其他数据(其中数字超过 4)。包含信用卡号的输入记录格式为:
"CARD_NUMBER=[6362229292929290]"
所以我需要替换上面格式的记录。所以上面的记录应该转换为
"CARD_NUMBER=[************9290]"
提前致谢。
【问题讨论】:
-
能否请您也发布不应删除的数据示例?
-
这是这个问题的后续:stackoverflow.com/questions/2232200/…