2012-02-20 11 views
5

Non sono un programmatore/script. Ho solo bisogno di ottenere il seguente script per scrivere in un file:

[CmdletBinding()] 
param() 

# Create a web client object 
$webClient = New-Object System.Net.WebClient 


# Returns the public IP address 
$webClient.DownloadString('http://myip.dnsomatic.com/') 

Ho provato fuori di file e export-csv ma ​​scrivo un file vuoto. Sono sicuro che sia qualcosa di semplice ... ma non avere conoscenze rende difficile per me.

risposta

7

Il cmdlet del componente di aggiunta dovrebbe fare ciò che si desidera.

Supponendo $webClient.DownloadString('http://myip.dnsomatic.com/') restituisce una stringa, tenta:

add-content -path <filename> -value$webClient.DownloadString('http://myip.dnsomatic.com/') 

Riferimento: http://technet.microsoft.com/en-us/library/dd347594.aspx

+0

funziona! Grazie! – pace

+0

Nessun problema. Se questo ti è stato d'aiuto, puoi fare come risposta accettata. – Arcass

+0

Viene visualizzato un errore, forse è necessario uno spazio tra $ webclient e -value? EDIT: Aah mio errore, non dimenticare di includere $ webClient = New-Object System.Net.WebClient – user230910

7

Si potrebbe anche utilizzare il metodo DownloadFile:

$webClient.DownloadFile('http://myip.dnsomatic.com/', 'c:\ip.txt') 
0
$PublicIP="C:\PublicIP.txt" 

$WebClient=New-Object net.webclient 

$String=$WebClient.DownloadString("http://checkip.dyndns.com") -replace "[^\d\.]" 

If (Test-Path $PublicIP) { 

    Remove-Item $PublicIP 
} 

New-Item $PublicIP -type file 

Add-Content -Path $PublicIP -Value $String 
Problemi correlati