SED를 사용하여 두 패턴 사이의 선 인쇄

SED를 사용하여 두 패턴 사이의 선 인쇄

다음 내용이 포함된 파일이 있습니다.

***************Encrypted String***************
 ezF7LcHO0Zlb+8kkBeIwtA== 
**********************************************

위에서 암호화된 비밀번호를 얻으면 됩니다. Google에서 답변을 검색하여 다음 예(아래)를 얻었지만 작동하지 않습니다.

sed -n '/***************Encrypted String***************/,/************************************‌​**********/p' $file

시도했지만 성공하지 못했습니다.

답변1

여기서 문제는 이것이 *정규식 연산자이므로 \*이를 리터럴로 처리하려면 이스케이프해야 한다는 것입니다. 이러한 조정이 없으면 텍스트로 인용된 예제와 제안이 실패 BEGIN하게 됩니다 END.

***************Encrypted String***************
 ezF7LcHO0Zlb+8kkBeIwtA== 
**********************************************

두 번째 행을 추출하려면 다음 방법 중 하나를 사용할 수 있습니다.

sed -n '0,/\*Encrypted String\*/d;p;q' "$file"
sed -n 2p "$file"

첫 번째 항목이 일치 *Encrypted String*하면 다음 줄이 인쇄됩니다. 문자 는 문자 그대로의 별표로 처리되도록 *작성되었습니다 . \*두 번째는 파일의 두 번째 줄만 인쇄합니다.

관련 정보