URL 목록이 있는데 그 중 일부는 이미지를 가리킵니다.
http://s.thebrighttag.com/iframe?c=A5lqOqP
http://s.wordpress.com/imgpress?resize=136,136&url=http%3A%2F%2Fdata.whicdn.com%2Fimages%2F2833524%2F4thofJuly-collage_large.jpg%3F1278084193
파일에서 이 줄을 어떻게 제거할 수 있나요?
답변1
cat file | grep -v "\.png" >new_file_without_pngs
업데이트된 댓글:
egrep -iv "\.(png|jpg|jpeg|gif|etc)" file >new_file
답변2
내부 편집 변형의 경우 sed
다음과 같이 사용할 수 있습니다.
$ sed -i -r 's/.*\.(png|jpg).*//I' file
.png
파일에 포함되거나 직접 포함된 줄을 삭제합니다 . 전달된 옵션은 .jpg
"제자리에서 편집"을 의미합니다. 이 명령을 실행하기 전에 파일을 백업하세요. 확실하지 않은 경우 먼저 이 옵션을 사용하지 않고 시도해 보세요.-i
sed
-i
이 I
플래그는 대소문자를 구분하지 않는 일치를 수행하는 데 사용됩니다.
답변3
Ex 모드에서 Vim을 사용할 수 있습니다:
ex -sc 'g/\.png/d' -cx file
g
글로벌 검색d
삭제x
저장하고 닫습니다
답변4
당신이 가지고 있다면sponge
다음과 같이 파일 내용을 바꿀 수 있습니다.
grep -E -iv "\.(png|jpg|jpeg|gif)" file | sponge file