내 파일에 다음 내용이 있습니다. sed를 사용하여 파일에서 날짜와 밑줄을 제거하고 싶습니다. grep으로 이 작업을 수행할 수 있는지 알려주세요.
03-02-2016
===========
<exp2://Ticket/26727777> Splunk Onboarding for SSO Components (UAT)
<exp2://Ticket/25709048> <SERVER-SETUP>Splunk Setup 14xMDN, 10xPRN Prod
<exp2://Ticket/26716590> Logs not populated properly from all servers - SPLUNK TEST
<exp2://Ticket/23995808> Prod: Create summary index summary_rover_lifecycle in DS cluster
05-02-2016
===========
<exp2://Ticket/26781310> Request for on-boarding on Splunk -Employee Systems Logs
<exp2://Ticket/26781558> Splunk setup for Apple Learn UAT hosts
답변1
GNU에 액세스할 수 있는 경우 grep
:
grep -vP '^(\d+-\d+-\d+|=+)$' file
그렇지 않은 경우:
grep -vE '^([0-9]+-[0-9]+-[0-9]+|=+)$' file
두 명령 모두 -v
grep 플래그를 사용합니다. 이는 "패턴과 일치하지 않는 행을 인쇄하고 대시로 구분된 3개의 숫자 세트로 구성된 행을 찾거나 =
행의 시작( ^
)에서 끝( )까지 $
하나 이상의 숫자 로 구성된 행을 찾는다는 의미입니다. 숫자의 행.
다음 명령을 사용하여 동일한 작업을 수행할 수 있습니다 sed
.
sed -E '/([0-9]+-[0-9]+-[0-9]+|=+)/d' file