다음 명령을 사용하여 IP 주소와 국가를 추출하고 텍스트에 따옴표나 다른 문자 없이 개별적으로 문자열에 입력하려면 어떻게 해야 합니까?
info_ip=`wget --tries=1 --timeout=10 -qO- http://ipinfo.io/?callback=callback; echo`
$ip = ?
$국가=?
답변1
awk
캡처를 사용 ip
하여 country
배열에 저장할 수 있습니다 .
IFS=$'\n'
IP_country=( $(awk -F'[:"]' '/ip/ || /country/{ print $5}' <<<"$( wget ... )") )
그런 다음 첫 번째 요소는 ip
이고 다음 요소는 다음과 같습니다 country
.
printf '%s\n' "${IP_country[0]}"
1.2.3.4
printf '%s\n' "${IP_country[1]}"
IR
또는 모든 요소를 인쇄합니다.
printf '%s\n' "${IP_country[@]}"
1.2.3.4
IR
앞으로 읽을 내용: