校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > PowerShell統計文件夾下文件個數的方法

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

熱門標簽:新鄭電銷機器人一個月多少錢 萬全縣地圖標注app 如何根據經緯度百度地圖標注 騰訊地圖標注中心怎么標注 地圖標注的圖案 六寸地圖標注點怎么刪除 電話機器人公司招聘 印臺區呼叫中心外呼系統 莫拉克電梯系統外呼怎么設置

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

我們這里有兩種方法來計算文件夾下的文件個數,下面分別展示詳細的代碼來計算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處理(忽略,繼續),這樣就會中斷了。

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

標簽:南昌 汕頭 襄陽 喀什 臨汾 湘潭 天水 疫苗接種

巨人網絡通訊聲明:本文標題《PowerShell統計文件夾下文件個數的方法》,本文關鍵詞  PowerShell,統計,文件夾,下,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《PowerShell統計文件夾下文件個數的方法》相關的同類信息!
  • 本頁收集關于PowerShell統計文件夾下文件個數的方法的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 任丘市| 绥芬河市| 洪泽县| 金川县| 高青县| 庄浪县| 吉水县| 沁源县| 天长市| 子长县| 永修县| 五华县| 甘南县| 泰顺县| 凤山市| 哈尔滨市| 江源县| 新宁县| 屯门区| 正蓝旗| 南充市| 舒兰市| 晋宁县| 河西区| 青岛市| 黑河市| 本溪| 尼勒克县| 阿图什市| 吉水县| 伊金霍洛旗| 肃宁县| 怀集县| 临海市| 射洪县| 囊谦县| 遂平县| 博爱县| 芮城县| 洪雅县| 会泽县|