소스 코드에 자바스크립트와 CSS가 포함된 HTML 파일이 있습니다. JS에는 다른 메타데이터가 포함된 일련의 URL이 나열되어 있습니다. awk를 사용하여 URL(모두 큰따옴표로 묶이고 앞에 http://가 붙음)을 추출하고 해당 URL을 표준 출력으로 덤프하고 싶습니다. 그런데 awk를 어떻게 쓰는지는 모르겠지만, 쓸 수 있는 도구인 것 같습니다.
{
title: "Dsssat",
artist: "cxpl djij awsoj e",
mp3: "http://somesite.com/seal/dsssat.mp3",
},
답변1
왜 awk를 사용하나요? sed
이것을 더 잘하세요:
sed -ne 's/.*\(http[^"]*\).*/\1/p' < foo.js
답변2
당신은 그것을 사용할 수 있습니다 grep
. 큰따옴표를 포함하려면 다음을 수행합니다.
grep -o '"http://[^"]*"' myfile.html
큰따옴표를 제외하려면 다음을 수행하십시오.
grep -o 'http://[^"]*' myfile.html
편집하다
JavaScript 개체의 URL만 일치하도록 하려면 몇 가지 추가 필터링을 수행해야 할 수도 있습니다.
grep -o 'mp3: "http://[^"]*"' myfile.html | grep -o '"http://[^"]*"'
grep -o 'mp3: "http://[^"]*"' myfile.html | grep -o 'http://[^"]*'