在Powershell中拒绝访问

时间:2014-03-03 06:37:52

标签: windows powershell cmd

我有一个单行PowerShell脚本,当它执行时它给我一个IIS服务器的总站点列表,但是当我保存到Excel电子表格时,我得到一个拒绝访问错误。

代码:

cmd /c  %windir%\system32\inetsrv\appcmd list site > c:\sites.xls

记录1:

Access to the path 'C:\sites.xls' is denied.
At line:1 char:53
+ cmd /c  %windir%\system32\inetsrv\appcmd list site > <<<<  c:\sites.xls
    + CategoryInfo          : OpenError: (:) [], UnauthorizedAccessException
    + FullyQualifiedErrorId : FileOpenFailure

记录2:

+  cmd /c  %windir%\system32\inetsrv\appcmd list site > <<<<  %temp%\sites.xls 
    + CategoryInfo          : OpenError: (:) [], DirectoryNotFoundException
    + FullyQualifiedErrorId : FileOpenFailure

我如何解决这个问题?

1 个答案:

答案 0 :(得分:3)

该命令的输出正在输出到当前用户无权写入文件的位置的文件。尝试将文件输出到用户有权访问的位置。例如:

cmd /c  %windir%\system32\inetsrv\appcmd list site > %temp%\sites.xls

或者,如果文件必须输出到c:\,那么尝试以具有该文件夹权限的用户身份运行Powershell进程(例如,开始 - >输入'powershell' - &gt;右键单击'Windows Powershell',然后选择'以管理员身份运行'。然后尝试使用原始命令行:

cmd /c  %windir%\system32\inetsrv\appcmd list site > c:\sites.xls