내부 DNS 이름의 IP 주소를 얻으려면 한 줄의 코드가 필요합니까?

내부 DNS 이름의 IP 주소를 얻으려면 한 줄의 코드가 필요합니까?

내부 DNS 이름이 있고 해당 IP 주소를 가져오고 싶습니다. Internalip1.mydomain.com을 10.10.10.10으로 변환하는 데 적합한 Bash 한 줄이 있습니까?

답변1

dig명령을 사용하면 출력에 대한 추가 구문 분석을 수행할 필요가 없습니다.

$ dig stackexchange.com +short
198.252.206.140

내부 전용 호스트 이름을 찾는 경우 +search다음 매개변수를 사용하는 것이 좋습니다.

$ dig myinternalhost +search +short
192.168.1.120

답변2

이건 어때?

% host -t A stackexchange.com | sed -e 's#.* has address ##'
198.252.206.140

답변3

변수 할당을 위해 스크립트에서 정기적으로 사용합니다. 모든 줄 바꿈을 제거하십시오 tr -d [:space:].

host -t A hostname | awk '{print $NF}' | tr -d [:space:]

편집(@jordanm의 크레딧):

host -t A hostname | awk '{printf $NF}'

전화할 필요가 없습니다 tr.

관련 정보