为什么Get-Item
在某些目录上不起作用?例如,CCD_;找不到项目";,但是ls $env:USERPROFILEAppData
工作正常并且可以列出文件?
我想使用gi
向它传递一个字符串,将它转换为具有其他成员(如LastWriteTime
(的对象。如果我对Get-ChildItem
使用ls
,我会得到子级,即目录中的文件,但不会得到目录。
我可以通过在父级上使用这样的过滤器来解决这个问题:ls -h $env:USERPROFILE | ? {$_.Name -match "AppData"} | select Name,LastWriteTime
-但必须有更好的方法,它不能解释为什么gi
不能直接工作。
AppData
目录有隐藏属性集:
PS C:> attrib $env:USERPROFILEAppData
H C:UsersusernameAppData
隐藏属性意味着默认情况下Get-Item
会忽略它。解决方法是使用-Force
:
PS C:> Get-Item $env:USERPROFILEAppData -Force
Directory: C:Usersusername
Mode LastWriteTime Length Name
---- ------------- ------ ----
d--h-- 11/25/2019 12:41 PM AppData