.local
SSH로 연결할 수 있도록 호스트 이름의 IP 주소를 가져오고 싶지만 host hostname.local
이 경우에는 작동 하지 않는 것 같습니다.
ssh [email protected]
잘 안되서 교체하려고 합니다.ssh [email protected]
.local
DNS가 아닌 호스트 이름을 IP 주소로 변환하는 명령이 간단한 ping
명령이라는 것을 알았습니다.
핑 결과입니다
PING 5153F344.local (192.168.8.105) 56(84) bytes of data.
64 bytes from 192.168.8.105: icmp_seq=1 ttl=64 time=0.524 ms
--- 5153F344.local ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 0.524/0.524/0.524/0.000 ms
실패한 솔루션의 다양한 변형 중 하나는 다음과 같습니다.
# Note trying not to use single quotes so I can turn all these commands into an alias:
DEV_TERM_IP="$(ping -c 1 5153F344.local) | cut -d \"(\" -f2 | cut -d \")\" -f1 | echo"
ssh "me@$DEV_TERM_IP.local"
답변1
나는 노력할 것이다
DEV_TERM_IP=$(ping -c 2 localhost| awk -F '[()]' '/PING/ { print $2}')
어디
-F '[()]'
awk에게 ( 또는 )를 구분 기호로 사용하도록 지시하세요./PING/
핑이 포함된 grep 라인{ print $2}
두 번째 필드 인쇄