欢迎光临,这里是 gOxiA=苏繁=SuFan 独立的个人博客。
本站域名:http://goxia.maytide.net or http://sufan.maytide.net
移动设备请访问:http://goxia.maytide.net/m
转载文章,请务必保留出处与作者信息,未经许可严禁用于商业用途!

[PS]使用 PowerShell 下载文件

[ 2014/02/24 13:05 | by gOxiA ]

powershell_logo

使用 PowerShell 下载文件

        前段时间部署了一个基于 Windows Server 2012 R2 的 Server Core 环境,在实际使用中会遇到需要从网站上下载文件的问题,因为 Server Core 并未提供 IE,所以下载就不是那么方便了。还好在 PowerShell 下可以调用 System.Net.WebClient 来实现下载。即:

$client = New-Object “System.Net.WebClient”

$client.DownloadFile(“http://www.maytide.net/info.txt”,”D:\info.txt”)

        虽然上述的脚本实现了从一个 URL 下载文件到本地,但是实际调用起来会感觉很麻烦。因为每次都要输入很长的脚本命令才能完成一个下载。gOxiA 在编程方面也没什么天赋,实属一菜鸟,参考了以前的脚本写了一个粗糙的下载脚本,其功能是执行脚本后提示输入 URL 的地址,然后再输入本地存储的文件路径,最后执行下载,并根据结果判断是否下载完毕。

        脚本中涉及了一些基本的命令代码,其中 Write-Host 用于输出提示文本;Read-Host 用于记录用户输入的数据;调用下载、下载地址、本地存储都使用变量,最后用 Test-Path 对下载的文件进行检查,并使用 if...else 进行判断。下面就是整个脚本的内容:

#清屏
Clear
#脚本基本信息提示
Write-Host
Write-Host PowerShell Download Tools Script.
Write-Host
#输入下载资源地址,赋予变量 $url
Write-Host Please enter URL address of download sources! -ForegroundColor Red
$url= Read-Host "Enter the URL..."
Write-Host
#输入文件存储路径,赋予变量 $local
Write-Host Please enter the local store path! -ForegroundColor Green
$local= Read-Host "Enter the store path..."
#调用下载,赋予变量 $dl
$dl= New-Object "System.Net.WebClient"
#执行下载
Write-Host
Write-Host Downloading... Please wait!!!
$dl.DownloadFile("$url","$local")
Write-Host
#将路径检查命令赋予变量 $result
$result=Test-Path $local
#对 $result 结果进行判断,如果是 True 表示下载完成,否则失败
if($result -eq $True)
{
    Write-Host Result status: Completed!!! -ForegroundColor Green
}
else
{
    Write-Host Result status: Failed!!! -ForegroundColor Red
}

        执行效果如下图:

image

windows_8_logo

HOWTO: 使用组策略禁用带密码的屏幕保护程序

        在 Windows 8 / Server 2012 上默认设置下,当我们离开计算机一段时间后,系统会关闭显示,当重新激活计算机时,如果当前用户账号设置有密码,那么系统会提示我们必须使用账号密码进行重新登录。

        虽然这一举措是非常安全的,但是在虚拟化环境中,尤其是虚拟化中运行的都是测试或实验系统,那么这一安全功能就会显得有些碍手了,因为操作人员需要在几个虚拟化系统中频繁切换,而一旦超出时间限定后,系统便会锁定,当操作人员重新回到这个系统上进行操作时就需要再次输入密码,显得非常繁琐!!!

        其实,我们可以通过组策略禁用这一个安全功能,在组策略中这一安全功能对应的设置选项为“带密码的屏幕保护程序”,该选项位于“用户设置”-“管理模板”-“控制面板”-“个性化”中,我们仅需要禁用该选项即可。

image

        如果是在包含有活动目录服务的域环境下,还可以通过域组策略统一为客户端进行设置。

Tags: , , , , , , , , ,

ws2012r2-logo

WorkFolders 错误 0x80c80001 传输的数据未采用正确的格式

        WorkFolders(工作文件夹) 是 Windows Server 2012 R2 提供的一项新功能,一种低成本、简便的文件同步存储解决方案。在 Preview 阶段 gOxiA 就开始关注 WorkFolders,早先也与大家分享了两篇文章“Windows Server 2012 R2 - Work Folders 概述”、“Windows Server 2012 R2 - Work Folders 体验”。在微软发布 Windows 8.1 GA Update 后,发现一旦系统更新了 GA 补丁,WorkFolders 就会出现故障,具体表现为 Windows 8.1 无法通过工作文件夹与服务器同步数据,而且“操作中心”会提示错误,无法忽略。开打工作文件夹会提示“同步已停止。发生了一个问题”,“传输的数据未采用正确的格式(0x80c80001)”。

workfolders_error

        在事件查看器中并未得到更多的有价值的信息,因为是新功能,所以网上也未能找到相关的信息。后来通过启用事件Debug日志,找到了具体的错误信息。经过一系列的排错,最终确定是由 GA 补丁引起的 Bug。

image

        庆幸的是在 GA 补丁发布一个月后,微软终于在本月发布的针对该问题的更新补丁,即:KB2887595。用户可以通过 Windows Update 进行更新,也可以单独下载安装。http://www.microsoft.com/zh-CN/download/details.aspx?id=41076(PS:这个更新是针对 Windows 8.1/Server 2012 R2 的补丁集,解决了不少问题,强烈推荐用户尽快更新。),此外在 KB2901069 中有关于 WorkFolders 问题的详细的解释!

分页: 1/20 第一页 1 2 3 4 5 6 7 8 9 10 下页 最后页 [ 显示模式: 摘要 | 列表 ]