加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

powershell – 我可以通过编程方式将root文件夹包含到get-childi

发布时间:2020-12-13 23:49:35 所属栏目:Linux 来源:网络整理
导读:如果我运行这个简单的命令: gci e:mytree -r | select fullname 它给出了这个输出: E:mytreefolder1 E:mytreefolder2 E:mytreefolder3 E:mytreefile1.txt E:mytreefile12.txt E:mytreefolder1folder.with.dots E:mytreefolder1folder.wit
如果我运行这个简单的命令:

gci e:mytree -r | select fullname

它给出了这个输出:

E:mytreefolder1                                                                                                                                                                      
E:mytreefolder2                                                                                                                                                                      
E:mytreefolder3                                                                                                                                                                      
E:mytreefile1.txt                                                                                                                                                                    
E:mytreefile12.txt                                                                                                                                                                   
E:mytreefolder1folder.with.dots                                                                                                                                                     
E:mytreefolder1folder.with.dotsfile inside folder with dots.txt                                                                                                                    
E:mytreefolder3file4.doc

有没有办法在输出中包含甚至根文件夹,以便我可以拥有

E:mytree
E:mytreefolder1                                                                                                                                                                      
E:mytreefolder2                                                                                                                                                                      
E:mytreefolder3                                                                                                                                                                      
E:mytreefile1.txt                                                                                                                                                                    
E:mytreefile12.txt                                                                                                                                                                   
E:mytreefolder1folder.with.dots                                                                                                                                                     
E:mytreefolder1folder.with.dotsfile inside folder with dots.txt                                                                                                                    
E:mytreefolder3file4.doc

解决方法

get-childitem $root -recurse | foreach-object -begin { $arr = @((get-item $root).fullname) } -process { $arr+= $_.fullname } -end { $arr }

使用foreach-object cmdlet的begin开关,我们在从get-childitem处理对象之前做了一些工作:我们创建一个数组并将根文件路径放在那里.

然后,对于管道中的每个对象,我们将其文件路径附加到数组.

最后,我们将数组输出到管道.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读