gpt4 book ai didi

powershell - 测试路径/System.IO.Directory::Exists 未按预期工作

转载 作者:行者123 更新时间:2023-12-02 23:31:46 32 4
gpt4 key购买 nike

我在使用 Powershell CmdLet 测试路径时遇到问题。

我在服务器上创建了一个共享 (\\Servername\MyShare$),它允许一组用户只创建一个文件并附加数据,而其他用户只能读取和删除这些文件。第一组不允许做任何其他事情,包括读取权限、读取属性等。

如果我作为“仅删除文件”组的成员在此文件夹上执行测试路径,则返回 false。偶[System.IO.Directory]::Exists()返回假。

我正在寻找一种无需拥有读取权限或读取属性权限即可测试目录是否存在的方法。有任何想法吗?

这是这两种方法的正确行为吗?

问候,
团队

最佳答案

好吧,如果没有人愿意冒险......

这是一个解决方案:

我无权访问目录 .\f1\f2.\f1\f3不存在。

PS C:\Silogix> Get-ChildItem .\f1\f2 -ErrorAction silentlycontinue
PS C:\Silogix> $Error[0].exception
L'accès au chemin d'accès 'C:\Silogix\f1\f2' est refusé.
PS C:\Temp\Temp> $Error[0].exception.gettype()

IsPublic IsSerial Name BaseType
-------- -------- ---- --------
True True UnauthorizedAccessException System.SystemException

PS C:\Silogix> Get-ChildItem .\f1\f3 -ErrorAction silentlycontinue
PS C:\Silogix> $Error[0].exception.gettype()

IsPublic IsSerial Name BaseType
-------- -------- ---- --------
True True ItemNotFoundException

所以如果你测试 $Error[0].exception.gettype()Get-Item你可以理解为什么它不可访问,所以如果它存在与否。你可以称之为“拼凑”,但这也是一种解决方案。对不起,例子中的法语。

关于powershell - 测试路径/System.IO.Directory::Exists 未按预期工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5632908/

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