grep은 구분 기호(시퀀스 번호)의 패턴을 따르는 것을 찾습니다.

grep은 구분 기호(시퀀스 번호)의 패턴을 따르는 것을 찾습니다.

나한테 파일이 있다고 해봐

#cat serial
SerialNumber                 : G5DBSTLAJ104949

$3에 "SerialNumber"를 인쇄한 후 어떤 단어가 나타나는지 알고 싶습니다.

나는 명령의 출력이 다음과 같기를 원합니다.

G5DBSTLAJ104949

Bash를 사용하여 얻은 "SerialNumber" 바로 뒤에 $3라는 단어를 인쇄하고 싶습니다. 이를 수행할 수 있는 방법이 있습니까?

답변1

당신은 그것을 사용할 수 있습니다 awk:

awk '/SerialNumber *:/{print$3}' serial

행에 "SerialNumber"가 포함되어 있으면 세 번째 열만 인쇄됩니다.

답변2

사용법 GNU grepPCRE모드:

grep -oP '^SerialNumber\s+:\s*\K\S+' file
G5DBSTLAJ104949

관련 정보