![웹사이트에서 텍스트를 검색하는 쉘 스크립트](https://linux55.com/image/116742/%EC%9B%B9%EC%82%AC%EC%9D%B4%ED%8A%B8%EC%97%90%EC%84%9C%20%ED%85%8D%EC%8A%A4%ED%8A%B8%EB%A5%BC%20%EA%B2%80%EC%83%89%ED%95%98%EB%8A%94%20%EC%89%98%20%EC%8A%A4%ED%81%AC%EB%A6%BD%ED%8A%B8.png)
웹사이트에서 텍스트를 검색하는 쉘 스크립트
웹사이트의 특정 부분을 추출하여 터미널에 표시하는 방법이 있나요? 여러부분이 있어요이 웹사이트사람들이 VPN(VPNBook)에 액세스할 수 있도록 사용자 이름과 비밀번호를 표시합니다. 그러나 그들은 비밀번호를 변경했기 때문에 웹 사이트에 액세스하는 쉘 스크립트를 만들고 사용자 이름과 비밀번호 필드를 추출하여 표시할 수 있는지 궁금했습니다.
이제 사용자 이름과 비밀번호 필드는 다음과 같습니다.
Username: vpnbook
Password: he2qv5h
누군가가 나에게 이 프로젝트를 시작하는 올바른 방향을 알려준다면 좋을 것입니다.
답변1
이것은 나에게 효과적입니다.
#!/usr/bin/env bash
url='https://www.vpnbook.com/freevpn'
html=$( curl -# -L "${url}" 2> '/dev/null' )
username=$(
<<< "${html}" \
grep -P -o -e '(?<=<li>Username: <strong>)(.*?)(?=<\/strong><\/li>)' |
head -n 1
)
password=$(
<<< "${html}" \
grep -P -o -e '(?<=<li>Password: <strong>)(.*?)(?=<\/strong><\/li>)' |
head -n 1
)
printf '%s\n' "Username: ${username}" "Password: ${password}"