이름이 다른 파일이 여러 개 있습니다. 특정 형식이 없습니다. 하지만 모든 것이 .txt
. 예를 들어:
example.txt
flower.txt
abc.com.txt
이들은 동일한 디렉토리에 있습니다. 모든 파일에서 문자열(예: )이 있는 줄을 검색하고 <html>
, 발견되면 해당 문자열이 있는 줄을 추출하고 싶습니다. 그런 다음 검색 결과를 다음과 같은 results.txt 파일에 저장하고 싶습니다.
파일명, 라인
예를 들어 <html>
문자열이 및 에서 발견되면 결과 파일은 다음과 같습니다.example.txt
abc.com.txt
example.txt,<html>[the rest of the line where html is found]
abc.com.txt,<html>[the rest of the line where html is found]
Linux에서 이를 어떻게 달성할 수 있습니까?
답변1
이 grep
명령은 주석에서 수락한 작업을 정확하게 수행합니다. (여러 개의 파일을 보장할 수 있는 경우에는 생략해도 됩니다 -H
.)
grep -FH '<html>' *
이 -F
플래그는 정규식 처리를 끄므로 문자열이 리터럴로 처리됩니다.