麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 開發 > PowerShell > 正文

PowerShell統計文件夾下文件個數的方法

2020-05-30 20:14:45
字體:
來源:轉載
供稿:網友

計算一個文件夾下面的文件個數是一件很容易的事情,但看到這篇文章之前,還從來沒有想過計算一下文件個數還有這么多學問在里頭。

我們這里有兩種方法來計算文件夾下的文件個數,下面分別展示詳細的代碼來計算windows目錄下的文件個數。

1、使用Get-ChildItem來得到所有的子文件夾和文件,然后再選取出所有的文件,再使用Measure-Object,最后再從Measure-Object的結果中使用Select-Object的ExpandProperty參數來計算出個數。聽起來就有點復雜,下面看看代碼吧。
代碼如下:
Get-ChildItem -Path $env:windir -Force |
 Where-Object { $_.PSIsContainer -eq $false } |
 Measure-Object |
 Select-Object -ExpandProperty Count

2、使用.NET自帶的方法來完成。[System.IO.Directory]::GetFiles(string dir)這種使用方法大家不默生吧,不過沒關系,懂.NET的朋友們看一眼就懂。當然反過來,如果不懂.NET的朋友也沒有關系,見到一個有用的就學一個,也沒有必要為了更好的使用PowerShell就去把.NET學一遍——雖然這也是一件很有意義的事。
代碼如下:
[System.IO.Directory]::GetFiles($env:windir).Count

這段代碼要著重說一下,據磚家研究,它的執行速度是第一種方法的20倍。好了,小編閉嘴了。

下面再附帶兩個循環讀取一個文件夾下的所有子文件夾下的、所有的文件個數的代碼:
代碼如下:
Get-ChildItem -Path $env:windir -Force -Recurse -ErrorAction SilentlyContinue |
 Where-Object { $_.PSIsContainer -eq $false } |
 Measure-Object | 
 Select-Object -ExpandProperty Count

[System.IO.Directory]::GetFiles($env:windir, '*', 'AllDirectories').Count

同樣的,.NET的方法效率要高得多。當然.NET的也不是一點弊端都沒有,那就是如果在執行過程中遇到沒有權限訪問的文件,程序就會中斷。而使用Get-ChildItem方法,它有一個-ErrorAction參數,可以對出錯時進行SilentlyContinue處理(忽略,繼續),這樣就會中斷了。

最后兩種方法怎么取舍呢,小編因為是年輕人,喜歡效率高的。但有時候也沒有辦法,為了讓系統更穩定,小編也不得不選擇更優雅的——雖然它慢一點。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 成年片在线观看 | 中文字幕综合在线观看 | 欧美日韩在线看片 | 91美女福利视频 | 亚洲成人免费视频在线 | sese在线视频 | 日韩av手机在线免费观看 | wwwxxx国产| 91福利免费观看 | 性爱视频免费 | 国产在线一级视频 | 一级成人毛片 | 亚洲成人精品久久久 | 色妞妞视频 | av成人在线电影 | 粉色视频污 | 欧美激情第一区 | 最新黄色av | 午夜视频在线免费观看 | 国产羞羞网站 | 久久影库 | 成人午夜精品久久久久久久3d | 久久精品国产99国产精品澳门 | 国内精品久久久久久久影视红豆 | 日本看片一区二区三区高清 | 欧美一级淫片免费视频1 | 国产精品91在线 | 国内精品久久久久久久星辰影视 | 亚洲视频观看 | 久久免费视频一区二区三区 | 成人情欲视频在线看免费 | 自拍偷拍999 | 在线观看免费视频麻豆 | 国产欧美在线一区二区三区 | 欧美日韩1区2区3区 黄片毛片一级 | 国产1区在线 | 久久久久久久久久久久久久久伊免 | 欧美a在线观看 | 久草在线新视觉 | www.54271.com| 黄污网址 |