如何看待“替代方案” PowerShell 中的属性?

发布于 2024-12-07 11:42:14 字数 244 浏览 1 评论 0原文

使用

Get-ChildItem | Get-Member

我可以看到对象的方法和属性。但是我如何才能看到例如属性的不同可能值?我可以用来

Get-ChildItem | Where-Object {$_.Attributes -ne "Directory"}

提取不是目录对象的对象,但如何查看 .Attributes 的其他替代方案?

Using

Get-ChildItem | Get-Member

I can see the methods and properties for an object. But how can I see the different possible values for e.g. properties? I can use

Get-ChildItem | Where-Object {$_.Attributes -ne "Directory"}

to extract objects which are not directory objects, but how can I see the other alternatives for .Attributes?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

べ映画 2024-12-14 11:42:14

提供程序属性 PSIContainer 对于文件夹为 true,对于文件为 false,因此您只能使用以下其中一项来获取文件:

Get-ChildItem | Where-Object {$_.PSIsContainer -ne $true}

Get-ChildItem | Where-Object {!$_.PSIsContainer}

Get-ChildItem | Where-Object {-not $_.PSIsContainer}

至于 Attributes 属性,Get-Member 的输出显示其类型名称 (System.IO.FileAttributes),其中是一个 Enum 对象:

PS> dir | gm attr*


   TypeName: System.IO.DirectoryInfo

Name       MemberType Definition
----       ---------- ----------
Attributes Property   System.IO.FileAttributes Attributes {get;set;}

您可以通过以下方式获取其可能的值:

PS> [enum]::GetNames('System.IO.FileAttributes')
ReadOnly
Hidden
System
Directory
Archive
Device
Normal
Temporary
SparseFile
ReparsePoint
Compressed
Offline
NotContentIndexed
Encrypted

The provider property PSIsContainer is true for folders and false for files, so you can get files only with one of the following:

Get-ChildItem | Where-Object {$_.PSIsContainer -ne $true}

Get-ChildItem | Where-Object {!$_.PSIsContainer}

Get-ChildItem | Where-Object {-not $_.PSIsContainer}

As for the Attributes property, the output of Get-Member shows its type name (System.IO.FileAttributes), which is an Enum object:

PS> dir | gm attr*


   TypeName: System.IO.DirectoryInfo

Name       MemberType Definition
----       ---------- ----------
Attributes Property   System.IO.FileAttributes Attributes {get;set;}

You can get its possible values with:

PS> [enum]::GetNames('System.IO.FileAttributes')
ReadOnly
Hidden
System
Directory
Archive
Device
Normal
Temporary
SparseFile
ReparsePoint
Compressed
Offline
NotContentIndexed
Encrypted
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文