다음과 같은 데이터가 있습니다.
p_id^|^data1^|^data2^|^data3
두 번째 필드만 구하면 돼요
data1
명령으로 여러 가지 트릭을 시도했지만 awk
찾을 수 없습니다. 누구든지 도와줄 수 있나요?
답변1
구분 기호에 여러 문자가 포함되어 있고 모든 문자가 특수 문자( ^
둘 다 |
정규식 연산자임)이므로 이스케이프 처리해야 합니다. 명령줄에서 다음 명령을 사용하여 이 작업을 수행할 수 있습니다.
awk -F '\\^\\|\\^' '{ print $2 }' file
또한 백슬래시 자체를 이스케이프 처리하려면 이중 백슬래시가 필요합니다(다른 이유로).