使用正则表达式删除注入 [英] Removing an injection using regex

查看:33
本文介绍了使用正则表达式删除注入的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我希望从大约 16,000 多个文件的第 1 行中删除此特定行.

I'm looking to sed this specific line from line 1 of about 16,000+ files.

注入的开始是:

<?php if(!isset($GLOBALS`

Middle of the injection is:
`7860msvd`

And end of the injection is:
`oqggbrtstz-1; ?>

此内容仅在 1 行(第一行)

This content is in 1 line only (the first)

不知道怎么做,但我这里有以下内容;

Not sure how to do it but what I have here is the following;

sed -i -e '1 s/.*<?php if(!isset($GLOBALS.*7860msvd.*oqggbrtstz-1; ?>//g'

error: sed: -e expression #1, char 67: Unmatched ( or (

任何帮助都会很棒.

推荐答案

您遗漏了一些特殊字符,例如 ? 并使用 -r 得到期望结果

You missing to literal some special character like ? and using -r get expect result

sed -ri  '1 s/.*<?php if(!isset($GLOBALS.*7860msvd.*oqggbrtstz-1; ?>//g' File

   -r, --regexp-extended

          use extended regular expressions in the script.

这篇关于使用正则表达式删除注入的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆