2012-02-20 20 views
5

Nie jestem programistą/scripter. Po prostu trzeba się poniższy skrypt do zapisu do pliku:

[CmdletBinding()] 
param() 

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


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

Próbowałem z pliku i eksport csv ale pisać pusty plik. Jestem pewien, że to coś prostego ... ale brak wiedzy utrudnia mi to.

Odpowiedz

7

Polecenie cmdlet add-content powinno zrobić to, co chcesz.

Zakładając $webClient.DownloadString('http://myip.dnsomatic.com/') Zwraca ciąg znaków, spróbuj:

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

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

+0

działa! Dziękuję Ci! – pace

+0

Bez problemu. Jeśli to pomogło, możesz przyjąć jako zaakceptowaną odpowiedź. – Arcass

+0

Występuje błąd, być może potrzebna jest spacja między $ webclient a -value? EDIT: Aah mój błąd, nie zapomnij uwzględnić $ webClient = New-Object System.Net.WebClient – user230910

7

Można też zastosować metodę 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 
Powiązane problemy