从'System.Net.WebClient.DownloadFile''解锁'ps1文件的快速和脏的方法

时间:2011-02-07 18:06:22

标签: powershell

我有一个脚本可以下载ps1文件,以便在新机启动时运行。我不想安装任何PowerShell添加或扩展方法。我只想解锁文件并运行它们。有什么建议吗?

$scriptsourcepath = "http://myUrl/"
$scripts = "SQLSetup-Admin.ps1","SQLSetup-NonAdmin.ps1","SQLConfigure.bat"
$downloadpath = "d:\vncutil\"
$clnt = New-Object System.Net.WebClient 

foreach($script in $scripts){
    $url = $scriptsourcepath + $script
    $file = Join-Path $downloadpath $script
    $clnt.DownloadFile($url, $file)
}
$batfile = Join-Path $downloadpath "SQLConfigure.bat"
$execStr = '$batfile >>d:\vncutil\SQLConfigure.log'
& $execStr

2 个答案:

答案 0 :(得分:2)

来自Scott Hanselman的

This post解释了如何将区域信息嵌入到备用数据流中,您可以使用该知识来解锁文件。

如果您能够使用外部工具,最简单的方法是使用SysInternals的streams.exe:

streams.exe -d yourscript.ps1

答案 1 :(得分:0)

在另一个论坛上得到了答案:并不是说@driis没有达到目标,但这更有力量

http://social.technet.microsoft.com/Forums/en/winserverpowershell/thread/0b5f1fa6-981e-4696-84bc-b8046564ec8b