PowerShell显示隐藏文件和系统文件的方法
程序员文章站
2022-05-21 18:47:35
在powershell中,列出文件的cmdlet是get-childitem,别名为dir。比如我们使用“dir $env:windir”可以显示windows目录的文件和...
在powershell中,列出文件的cmdlet是get-childitem,别名为dir。比如我们使用“dir $env:windir”可以显示windows目录的文件和文件夹。
命令:
复制代码 代码如下:
ps >dir $env:windir
输出:
复制代码 代码如下:
目录: c:\windows
mode lastwritetime length name
---- ------------- ------ ----
d---- 2009/7/14 13:32 addins
d-r-s 2013/6/24 10:48 assembly
d---- 2009/7/14 18:31 zh-cn
……以上为文件夹部分
-a--- 2009/7/14 9:38 71168 bfsvc.exe
-a--s 2013/7/17 7:42 67584 bootstat.dat
-a--- 2009/7/14 9:39 10240 write.exe
……以上为文件部分
这里,我们来看看mode属性这一列,一共五个字符,表示五种属性。
第一个字符,如果为“d”,表示这是一个文件夹;如果为“-”,表示它是一个文件。
第二个字符,如果为“a”,表示存档文件或文件夹,即archive属性。
第三个字符,如果为“r”,表示此文件或文件夹是只读类型,即read-only。
第四个字符,如果为“h”,表示此文件或文件夹是隐藏的,即hidden。
第五个字符,如果为“s”,表示此文件或文件夹是系统的,即system。
在windows资源管理器的文件夹选项中,有一个显示所有文件或文件夹的选项,开启它可以显示隐藏文件。还有一个显示系统文件和文件夹的选项,开启它可以显示系统文件和文件夹。
在powershell中,默认使用dir命令是无法显示出隐藏文件或文件夹的,如果加一个“-force”参数,则可以强制显示所有的文件或文件夹。如果进一步只想查看隐藏的文件或文件夹,可以加筛选条件。
命令:
复制代码 代码如下:
ps >get-childitem $env:windir -force | where-object { $_.mode -like '*h*' }
输出:
复制代码 代码如下:
目录: c:\windows
mode lastwritetime length name
---- ------------- ------ ----
d--hs 2009/7/14 18:44 bitlockerdiscoveryvolumecontents
d--hs 2013/7/15 13:31 installer
-arh- 2009/7/14 12:54 749 windowsshell.manifest
说明:
此命令要求输出所有的$env:windir下的文件和文件夹,然后再筛选出带有隐藏属性“h”的对象。
在powershell 3.0中,还可以使用更直接的方式来来显示隐藏属性的文件和文件。
命令:
复制代码 代码如下:
ps >get-childitem $env:windir -attributes h
好了,关于显示隐藏文件件和文件夹,小编就介绍到这里,希望对大家有所帮助,谢谢!