使用正则表达式删除注入
我希望从大约 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.
相关文章