国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > PowerShell > 正文

PowerShell查找分區中最大文件的方法(查找文件并按大小排序)

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

本文介紹一個PowerShell命令,用于將某個目錄或磁盤(如D盤)下占用空間最大的前幾個文件。這個任務在其它編程語言中,可能要大段大段的代碼,而在PowerShell中,我們只需要一行。

當我們發現某個盤空間不足時,作為管理員,我們得要將該盤上的無用的文件做一些清理。面對這項工作,我們得要想哪些是無用的文件,哪些是占用空間比較大的文件。在實際操作過程中,我們不太可能花費大量的時間和精力去把所有的無用的文件都清除掉,所以,最佳的實踐是找出占用空間最大的一些文件,然后來判斷一下哪些是無用的。將這些占用空間大,且無用的文件清理了,磁盤空間不足的難題自然頓時就化解了。

好了,我們現在就來設想一下怎么找到一個目錄或磁盤下最大的文件。一個最簡單的思路是設置一個非常大的數組,然后遍歷目錄下的所有文件和子文件夾下的所有文件,將其名稱、路徑、占用空間大小等屬性保存到數組中。最后對數組進行排序,得到最大文件的倒序列表。懂開發的兄弟聽了后應該能感受到這個問題中的難度和復雜性了。總之,不簡單!

我們來看看PowerShell中如何解決這個問題。
第一步,獲取D盤下所有的文件的列表。這個很簡單,有dir(即Get-ChildItem)這個cmdlet可以實現。
代碼如下:dir d:/ -Recurse
第二步,對得到的列表,按文件大小進行逆序排列。
代碼如下:dir d:/ -Recurse | Sort-Object -Descending length
注意,這里使用管道將第一步得到的文件列表作為輸入參數給Sort-Object,然后Sort-Object再按照length(文件占用空間大小的屬性,這個屬性是第一步獲得的列表對象中的屬性,不是隨便想的)倒序排列(-Descending表示倒序)。
第三步,對排序后的列表,提取出前10條。
代碼如下:dir d:/ -Recurse | Sort-Object -Descending length | Select-Object -First 10
這一步就不用解釋了。

最終得到對象列表,為了輸出好看,還可以在Select-Object的時候,控制一下輸出部分屬性,比如只輸出Name和Length。所以最后可以得到如下結果:
代碼如下:PS C:/Users/splaybow> dir d:/ -Recurse | Sort-Object -Descending length | select-object name,length -First 10

Name                                                                     Length
----                                                                     ------

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 德格县| 平阴县| 汝阳县| 石柱| 佛冈县| 琼结县| 海宁市| 车险| 新巴尔虎左旗| 奇台县| 石景山区| 蕉岭县| 马山县| 昭觉县| 当阳市| 宣城市| 上虞市| 西盟| 钦州市| 东平县| 秦安县| 曲靖市| 陵水| 松原市| 翁源县| 祁连县| 突泉县| 红安县| 永春县| 九江市| 讷河市| 杭锦后旗| 紫阳县| 沭阳县| 张掖市| 建宁县| 南丹县| 万宁市| 富平县| 阿图什市| 宜丰县|