2010-11-14 4 views
2

J'essaie d'écrire un script PowerShell qui va définir une variable de répertoire de téléchargement basée sur le répertoire courant, et télécharger un fichier dans ce répertoire.Le fichier de téléchargement de Powershell ne fonctionne pas correctement

Le code que j'ai est:

cd downloads 
$DevDownloadDirectory = [IO.Directory]::GetCurrentDirectory 

$clnt = New-Object System.Net.WebClient 

# download and extract the file 
$url = “fileurl/file.zip" 
$file = "$DevDownloadDirectory\file.zip" 
$clnt.DownloadFile($url,$file) 

Le problème que je reçois est à chaque fois que je reçois à cette partie du code il pompe:

Exception appelant "DownloadFile" avec "2" argument (s): "Une exception s'est produite lors d'une requête WebClient." C: \ répertoire \ script.ps1: 462 CHAR: 20

  • $ clnt.DownloadFile < < < < ($ url, $ file)
  • CategoryInfo: NotSpecified: (:) [], MethodInvocationException
  • FullyQualifiedErrorId: DotNetMethodException

quelqu'un pourrait-il s'il vous plaît me aider à comprendre pourquoi cela se produit?

+0

Toute aide ici? http://stillpearling.blogspot.com/2009/02/more-powershell-adventures.html – Shoban

+1

Attention au symbole de guillemet incorrect sur la ligne: '$ url =" ' – cederlof

Répondre

2
$DevDownloadDirectory = [IO.Directory]::GetCurrentDirectory 

devrait être

$DevDownloadDirectory = [IO.Directory]::GetCurrentDirectory() 

GetCurrentDirectory() est une méthode et si vous n'utilisez la «() », il suffit de retourner le même nom mais pas le répertoire courant.

+4

Il convient également de noter que GetCurrentDirectory() – JasonMArcher

+0

Merci d'avoir résolu ce problème, je devrais noter que j'ai utilisé ce que Jason a suggéré pour $ pwd pour que je puisse le faire. obtenir le répertoire de travail pour être la valeur de la variable. – th3flyboy

Questions connexes