여러 구분 기호가 있는 awk

여러 구분 기호가 있는 awk

나는 다음과 같은 일을하려고합니다 awk:

<tag x="whatever" y="http://mysite.com/somewords/word1/word2/word3/word4">

나는 그것이 항상 거기에 있지 않다는 것을 알았기 때문에 word2항상 거기에 있었던 것을 추출하고 싶었습니다 .word1somewords

를 사용하여 이 작업을 수행할 수 있지만 awk매번 구분 기호를 사용하여 3번 사용했습니다.

awk여러 명령을 여러 구분 기호로 병합하는 방법이 있습니까 , 아니면 awk하나만 선택 합니까 word2?

답변1

awk 구분 기호는 정규식일 수 있으므로 공백과 슬래시로 줄을 나누려면 다음을 사용할 수 있습니다.-F '[ /]'

그러나 대략적인 설명을 고려하면 아마도 다음만 필요할 것입니다.

awk -F/ '{for (i=1; i<NF; i++) if ($i == "word1") {print $(i+1); break}}'

관련 정보