gpt4 book ai didi

powershell - 我需要帮助来了解PowerShell安全性和文件访问问题

转载 作者:行者123 更新时间:2023-12-03 12:32:00 24 4
gpt4 key购买 nike

我正在使用PowerShell,正在运行包含以下行的脚本(从我的控制台):

$inpath = "C:\users\xxxxx\path\foo\bar"

而且我不断收到此错误:
Get-Content : Access to the path 'C:\users\xxxxx\path\foo\bar' is denied.
At C:\users\xxxxx\path\foo\testscript.ps1:53 char:12
+ Get-Content <<<< $txtfile | Get-WordCount -Exclude (Get-Content c:\temp\exclude.txt) | select -First 15
+ CategoryInfo : PermissionDenied: (C:\users\xxxxx\path\foo\bar:String) [Get-Content], UnauthorizedAcc
essException
+ FullyQualifiedErrorId : GetContentReaderUnauthorizedAccessError,Microsoft.PowerShell.Commands.GetContentCommand

脚本和目标文件都位于我的本地驱动器上。我可以在资源管理器中访问文件,使用记事本查看/编辑/保存文件,并且没有设置任何权限限制。在命令行上时,我可以在路径中的文件上成功运行 get-content cmdlet。我可以更改目录 PS C:> cd C:\users\xxxxx\path\foo\bar并成功列出其中的内容。更有趣的是,我可以复制脚本中出错的行,而不会在命令行上收到错误。
PS C:\users\xxxxx\path\foo> $inpath = "C:\users\xxxxx\path\foo\bar"
PS C:\users\xxxxx\path\foo>

这使我怀疑“权限被拒绝”错误实际上是其他错误,或者是足够模糊的错误,以至于我不知道如何继续进行故障排除。 PS可能与运行它的用户具有不同的权限吗?以前有没有人见过这种行为,您是如何解决该问题的?我确定有一个我不知道的简单解决方案。

最佳答案

Get-Content : Access to the path 'C:\users\xxxxx\path\foo\bar' is denied.At C:\users\xxxxx\path\foo\testscript.ps1:53 char:12


该路径看起来不是文件而是文件夹。

您确定要将文件名附加到文件夹并将其传递给 Get-Content吗?

当您尝试打开目录时,如果没有传递任何额外的标志,Windows就会将其拒绝访问。 .NET不会传递这些标志(打开文件夹有一些特定情况,但在这里不适用)。

关于powershell - 我需要帮助来了解PowerShell安全性和文件访问问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14483711/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com