Solo me gustaría obtener IP externa a través de Powershell Solo dirección IP sin encabezado ni nada.
Intento muchas cosas como
(Invoke-WebRequest ifconfig.me/ip).Content
pero tiene esta segunda línea extra que no me hace bien.
Yo también lo intenté.
(Get-WmiObject -Class Win32_NetworkAdapterConfiguration -Filter IPEnabled=TRUE) | %{$_.ipaddress[0]}
Pero no me funciona porque estoy detrás del enrutador.
Gracias.
Function IPV()
{
$IPCHK = ((Invoke-WebRequest ifconfig.me/ip).Content.Trim())
$IPCHK | Out-FIle 'CHKIP.txt'
}
$CurrentIP = ((Invoke-WebRequest ifconfig.me/ip).Content.Trim())
$PreviousIP = Get-Content 'CHKIP.txt'
IF($PreviousIP -eq ((Invoke-WebRequest ifconfig.me/ip).Content.Trim()))
{
$PreviousIP
}
ELSE {
##SEND EMAIL SCRIPT
IPV #RUN CHECK IP COMMAND AGAIN.
}
networking
powershell
ip-address
usuario206168
fuente
fuente
Respuestas:
Ya tienes tu respuesta. Solo desea deshacerse de la línea adicional, nada lo obliga a usar
como es. En cambio, podría usar esto:
El método String.Trim "elimina todos los caracteres de espacio en blanco iniciales y finales del objeto String actual".
fuente
Trim()
la salida deGet-Content
, solo para estar seguro. Además, usa tu$CurrentIP
variable. ;)Get-Content.Trim()
?Invoke-WebRequest
. Pones paréntesis alrededor y.Trim()
después de eso. Pero recomiendo publicar una nueva pregunta, porque todo esto se desvía demasiado del enfoque original de esta pregunta.Un método usando OpenDNS.
fuente
Resolve-DnsName : The term 'Resolve-DnsName' is not recognized as the name of a cmdlet, function,
Pude solucionar mi problema seleccionando solo la primera línea del archivo de texto. No pude usar TRIM y eliminar la línea vacía.
Usando este enlace hice lo siguiente.
Espero eso ayude.
fuente
$CurrentIP
variable. : Plos datos anteriores ya no funcionan. Así que personalmente he hecho una alternativa al script anterior.
Puede escribir esto en cmd / powershell cada vez que desee tomar su ip externa.
Si esta página o secuencia de comandos le da algún error, dígame. ¡Gracias!
fuente