파일에서 새 줄을 찾아 파일에 씁니다.

파일에서 새 줄을 찾아 파일에 씁니다.

파일에서 새 줄을 감시한 다음 특정 조건을 통과하면 해당 새 줄을 다른 파일에 쓰는 bash 스크립트를 작성하고 싶습니다. 파일을 모니터링하고 조건에 줄을 계속 전달하려면 스크립트를 지속적으로 실행해야 합니다. 나는 tail -f filename.txt파일 증가를 모니터링하는 데 사용했지만 후자의 두 부분에서는 성공하지 못했습니다. 괜찮나요?

답변1

입력과 출력의 복잡성에 따라 스크립트를 사용하여 다음과 같이 각 줄을 처리할 수 있습니다.

tail -f 'filename' | xargs -L1 'script'

그런 다음 해당 행을 매개변수로 사용하여 각 행에 대해 "스크립트"가 실행됩니다(스크립트에서 "$@"을 통해 액세스됨).

풍부한 의견은 다음을 사용 grep하거나 sed다음을 통해 제안합니다.

tail -f 'filename' | grep -e 'expr1' -e 'expr2' >> 'newfile'

또는

tail -f 'filename' | sed 's/Conditions for line./Line that goes to new file./g' >>'newfile'

관련 정보