업데이트

업데이트
Oct 24 10:18:43 reliant3 sshd[67299]: Accepted password for root from 10.51.21.57 port 60097 ssh2

비밀번호라는 단어를 검색하고 있습니다. 일단 그것을 찾으면 그 번호와 연관된 것을 찾아서 sshd[67299]인쇄하고 싶습니다.

답변1

$ echo "Oct 24 10:18:43 reliant3 sshd[67299]: Accepted password for root from 10.51.21.57 port 60097 ss" | sed 's/.*\[\(.*\)\].*/\1/'
67299

(모두 폐기하십시오. 괄호 안의 내용과 동일).

답변2

이것은 당신에게 도움이 될 것입니다

grep password my_log.txt | sed 's/.*sshd\[\(.*\)\].*/\1/'

grep password my_log.txt비밀번호가 포함된 모든 라인을 가져옵니다.

sed 's/.*sshd\[\(.*\)\].*/\1/'[]뒤에 '를 찾아 sshd그 안에 PID를 가져옵니다.

질문에 이를 지정하지 않았지만 이를 파이프하여 sort -u중복 항목을 필터링할 수도 있습니다.

업데이트

제 생각에는 읽기가 쉽지 않지만 한 줄로 모든 작업을 수행할 수도 있습니다 sed.

sed -e '/password/!d;s/.*sshd\[\(.*\)\].*/\1/' my_log.txt

관련 정보