PowerShell中使⽤Get-ChildItem命令读取⽬录、⽂件列表
使⽤例⼦和⼩技巧
本⽂介绍⼀个PowerShell中使⽤Get-ChildItem这个cmdlet来获取⽬录下的⽂件列表。Get-ChildItem是获取⼦项⽬的意思,可以获取⼀个⽬录下的⽂件和⼦⽬录。
在DOS系统下,我们想查看⼀个⽬录下有哪些⼦⽬录和⽂件,我们可以通过dir命令来实现。在PowerShell中,dir命令貌似仍然可⽤。但洪哥告诉你,这个dir已经不是中的那个dir了,它是Get-ChildItem这个cmdlet的别名。也就是说,使⽤Get-ChildItem和使⽤dir得到的效果是完全⼀样的。
下⾯我们来看看Get-ChildItem在PowerShell中如何使⽤。
1、查看D盘下的⼦⽂件夹和⽂件列表
复制代码代码如下:
PS C:\Users\splaybow> Get-ChildItem d:\
⽬录: D:\
Mode LastWriteTime Length Name
---- ------------- ------ ----
d---- 2013/11/15 10:50 develop
d---- 2013/11/1 22:27 green
d---- 2013/11/4 17:31 Program Files
d---- 2013/11/17 9:30 Program Files (x86)
d---- 2013/10/13 10:02 soft
当然,洪哥D盘下没有直接放⽂件,所以只看⼀些⽬录了。
2、查看D盘下所有的txt后缀的⽂件
复制代码代码如下:
PS C:\Users\splaybow> Get-ChildItem d:\ -Include *.txt -recurse
⽬录: D:\develop\tomcat8\webapps\docs\appdev\sample\docs
Mode LastWriteTime Length Name
---- ------------- ------ ----
----- 2013/10/16 14:50
⽬录: D:\develop\tomcat8\webapps\docs\appdev
Mode LastWriteTime Length Name
---- ------------- ------ ----
----- 2013/10/16 14:50 l.txt
----- 2013/10/16 14:50 l.txt
⽂件列表下⾯还有很多内容,洪哥就不⼀⼀列举了。在Get-ChildItem这个cmdlet中,-Recurse表⽰是否循环遍历⼦⽬录,⽽-Include表⽰筛选条件。
3、查看D盘下的⽂件列表,不显⽰⽬录
复制代码代码如下:
PS C:\Users\splaybow> echo "xxx">d:\1.txt
PS C:\Users\splaybow> Get-ChildItem d:\
⽬录: D:\
Mode LastWriteTime Length Name
---- ------------- ------ ----
d---- 2013/11/15 10:50 develop
d---- 2013/11/1 22:27 green
d---- 2013/11/4 17:31 Program Files
d---- 2013/11/17 9:30 Program Files (x86)powershell创建目录
d---- 2013/10/13 10:02 soft
-
a--- 2013/11/17 19:07
PS C:\Users\splaybow> Get-ChildItem d:\ | ?{$_.PsIsContainer -eq $false}
⽬录: D:\
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a--- 2013/11/17 19:07
上⾯的命令中,洪哥先使⽤echo,在d:\下创建了⼀个1.txt。然后使⽤Get-ChildItem时,就可以看到⽂件列表中有1.txt这个项⽬,当然还有其它⽬录存在。最后洪哥使⽤了⼀个管道命令,将不是⽬录的项⽬从⽂件列表中筛选出来,于是得到1.txt的⽂件列表。
最后再说⼀下的是,Get-ChildItem不仅可以⽤来显⽰⽂件系统的⽂件列表,还可以处理环境变量(env)、注册表(hklm)、证书(cert)、变量(Variable)等树状路径。
关于PowerShell使⽤Get-ChildItem获取⽬录下的⽂件列表,本⽂就介绍这么多,希望对您有所帮助,谢谢!
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论