
expect.logfile를 사용하여 로그파일을 읽어 들일 때 특정 문자열을 포함하는 라인만 추출하는 방법은 다음과 같습니다.
1. expect.logfile 명령어에 `-re` 옵션을 사용하여 정규표현식을 지정합니다. 예를 들어, ERROR 문자열을 포함하는 라인을 추출하려면 `-re 'ERROR'` 옵션을 사용합니다.
2. expect.logfile 명령어에 `-i` 옵션을 사용하여 로그파일을 읽어 들일 때 라인 수를 제한할 수 있습니다. 예를 들어, 10줄만 읽어 들이고 싶다면 `-i 10` 옵션을 사용합니다.
3. expect.logfile 명령어에 `-q` 옵션을 사용하여 로그파일을 읽어 들일 때 quiet 모드에서 작동할 수 있습니다. 예를 들어, 로그파일을 읽어 들일 때 quiet 모드에서 작동하고 싶다면 `-q` 옵션을 사용합니다.
예를 들어, 로그파일을 읽어 들일 때 ERROR 문자열을 포함하는 라인만 추출하고 싶다면 다음과 같이 명령어를 작성할 수 있습니다.
#hostingforum.kr
bash
expect -c "set log_file [open "로그파일명.log" r]; set lines [split [read $log_file] n]; foreach line $lines { if {[string match -nocase "ERROR" $line]} { puts $line } }; close $log_file}"
이 명령어는 로그파일을 읽어 들여서 ERROR 문자열을 포함하는 라인만 추출하고 출력합니다.
2025-06-01 11:18