programing

grep 결과 파일의 첫 N줄을 삭제해야 합니다.

powerit 2023. 9. 15. 21:25
반응형

grep 결과 파일의 첫 N줄을 삭제해야 합니다.

워드프레스 설치 중 일부에서 해커 문제를 제거하려고 합니다.

이 사람은 내 서버에 있는 여러 파일의 머리에 9줄의 코드를 입력했습니다.이 문제를 해결하기 위해 grep과 sed를 사용하려고 합니다.

시도 중입니다.

grep -r -l  "//360cdn.win/c.css" | xargs -0 sed -e '1,9d' < {}

하지만 제거하면 아무 일도 일어나지 않아요-0 from알갱이들, the result of the files found are clean, but they are not overwriting the origin file with thesed' 결과, 누가 나를 도와줄 수 있습니까?

감사합니다!

당신은 사용해야 합니다.--null옵션 인grepNUL 바이트를 출력하는 명령 또는\0의 각 파일 이름 뒤에grep산출량.쓰임새-i.bak인에sed각 파일의 인라인 편집에 사용할 수 있습니다.

grep -lR --null '//360cdn.win/c\.css' . | xargs -0 sed -i.bak '1,9d'

파일을 직접 반복하는 것이 무엇이 문제입니까?

그리고 당신은 추가하고 싶을지도 모릅니다.-i파일을 제자리에서 편집할 수 있도록 평평하게 sed에 저장

grep -r -l  "//360cdn.win/c.css" | while read f
do
   sed -e '1,9d' -i "${f}"
done

◦ 파일에 새 줄 같은 것이 포함되어 있으면 문제가 생길 수도 있지만, 그 다음에는...당신의 웹사이트에 새로운 줄이 있는 파일들이 포함되어 있다면, 당신은 아마 다른 문제들을 가지고 있을 것입니다.

언급URL : https://stackoverflow.com/questions/41266725/need-to-delete-first-n-lines-of-grep-result-files

반응형