我正在运行 sed 作为 shell 脚本的一部分,以清理绑定日志以插入数据库。
sed 命令之一如下:
sed -i 's/-/:/g' $DPath/named.query.log
事实证明这是有问题的,因为它会破坏任何还包含破折号的资源请求(我使用 : 作为 awk 语句的分隔符)。
我的问题是如何将上面的 sed 命令限制为该行的前十个字符?我还没有看到一个特定的开关可以做到这一点,而且我对 RegEx 的使用还远远不够好,甚至无法开始开发一个有效的开关。我不能只使用正则表达式来匹配前面的数字,因为该模式可能是资源请求的一部分。哎呀,我什至不能对####-##-## 使用模式匹配,因为它可能是资源的一部分。
任何想法都非常感谢。