Windows system >> Windowsの知識 >  >> Linuxシステムチュートリアル >> Linuxについて >> Linuxが指定されたサイズのファイルより大きいディレクトリを一覧表示する方法

Linuxが指定されたサイズのファイルより大きいディレクトリを一覧表示する方法

  

Linuxシステムでは、ディスク上の利用可能なスペースを拡張するためにいくつかの大きいファイルをクリーンアップする必要があることがよくあります。ただし、これらのファイルをクリーンアップする前に、まずそれらのファイルを見つけるか、またはLinuxのすべての大きなファイルをリストする必要があります。この記事では、awkコマンドを例に挙げて、Linuxが指定されたサイズよりも大きいディレクトリーをリストする方法を紹介します。

ビジネス背景

/ホーム/PMSディレクトリ作業ディレクトリで、ディレクトリは現在、ハードディスクのスペースを取ることは掃除する必要があり、大きすぎる、そして今、すべての子供がそのディレクトリに200メガバイトを超えるファイル列挙する必要がありますディレクトリ、およびこのサブディレクトリのフットプリント

スクリプトの実装

du -h --max-depth = 10 /home /pms /* |  Awk‘ {if($ 1〜/M /){split($ 1、arr、' M')}}; if(($ 1〜/G /)| |  ($ 1〜/M /&Arr [1] "200)){printf'% - 10s%s \\ n'、$ 1、$ 2}}’ |  ソート-n -r

ここで、

du -h --max-depth = 10 /home /pms /*

結果は次のようになります。

$ du -h --max-depth = 10 /home /pms /*

0 /home /pms /addressCountMap

12K /home /pms /bigDataEngine /conf

1.7 M /home /pms /bigDataEngine /分析/警告

33M /home /pms /bigDataEngine /分析/ログ

...

次のawk文、役割は最初のパラメータを決定し、それがMであれば文字列マッチングを実行し、文字Mで傍受します。if($ 1〜/M /){split($ 1、arr、' M')}; Br>

次のawk文、役割は最初のパラメータ、文字列の一致を決定することです。

1、M、容量が200MB以上であるかどうかを決定、パラメータ1とパラメータ2を直接出力すること

2、直接出力パラメータ1とパラメータ2

if(($ 1〜/G /)| |  ($ 1〜/M /&& arr [1] 200)){printf'% - 10%s \\ n'、 $ 1、$ 2}

出力結果

$ Du -h --max-depth = 10 /home /pms /* |  Awk‘ {if($ 1〜/M /){split($ 1、arr、' M')}}; if(($ 1〜/G /)| |  ($ 1〜/M /&Arr [1] "200)){printf'% - 10s%s \\ n'、$ 1、$ 2}}’ |  並べ替え-n -r

上記はLinuxが指定されたサイズより大きいディレクトリを一覧表示する方法です大きなファイルを一覧表示することで、それらをまとめて削除できます。

Copyright © Windowsの知識 All Rights Reserved