Unix 명령을 사용하여 정렬 URL 정규식 구현

Unix 명령을 사용하여 정렬 URL 정규식 구현

저는 sed, awk, sort, grep 및 기타 Unix 바이너리에 구현된 정규 표현식을 처음 사용합니다.

텍스트 편집기(BBEdit)에서 URL 목록을 정렬하기 위해 다음 정규 표현식을 사용하면 다음과 같은 사실을 알고 있습니다.

(https?)://([a-z0-9]+[.])*(.+?)[.](.+?)/(.*)$
\3\t\4\t\2\t\5\t\1

내가 원하는 최종 결과가 나왔습니다.

BBEdit의 GUI에서 정렬을 실행하지 않고도 자동으로 수행할 수 있도록 Unix 명령줄에서 이 정렬을 수행하고 싶습니다. 그러나 나는 그것을 올바르게 번역하기에는 sed, awk, sort 등에 대해 충분히 알지 못합니다.

누구든지 답변과 교육을 도와주시면 매우 감사하겠습니다. (저는 이 명령의 GNU 버전을 가지고 있으며, 중요한 경우 현재 쉘은 zsh입니다.)

답변1

이것이 당신이 원하는 것입니까?

cat urls.txt | sed -r -e "s|(https?)://([a-z0-9]+[.])*(.+?)[.](.+?)/(.*)$|\3\t\4\t\2\t\5\t\1|g"

나는 sed수출업자는 아니지만 건설이 sed -e -r "s|someregex|replacedwitthis|g" < somefile.txt도움이 될 수 있습니다. 도움이 되었기를 바랍니다!

관련 정보