findコマンドで検索する階層を指定(maxdepth)

Pocket

findコマンドで、そんな深い階層まで調べなくていいよって時に使う。

自分はカレントディレクトリのみでいい時に使うことが多そう。

  • カレントディレクトリのみでファイル名がgzで終わるやつ

    -maxdepth n で階層を指定してあげればよい。1ならカレントディレクトリのみ

スクリプトで配下のディレクトリにファイルをmvして、移動したファイルが次回のスクリプトで対象になってほしくない時なんかに使うと思う。

Pocket

findコマンドで、サイズの大きいディレクトリを探す

Pocket

なんでこんなこと調べようと思ったかというと、とあるシステムで特定のパーティションのi-nodeが溢れそうになっていた。

i-nodeを大量消費するのは、細かいファイルを大量に作るやつだと思うので、そんなディレクトリがあれば、

きっとディレクトリサイズがでかくなっているはず。

 

Linuxのディレクトリサイズは、中のファイル数が多くなると、大きくなる。細かい理由とかはgoogle先生に聞くといいと思う。

 

で、調べるのは、findコマンドでこんな感じ

普通のディレクトリであれば、4kのはずなので、このくらいデカければ、まー異常ってことで。

一応予想通り、i-nodeを大量消費しているディレクトリを特定出来た。

Pocket

findでブロックファイルやキャラクタファイルを探す

Pocket

めったに無いのだが、ファイルシステムがクラッシュした時の影響か、普通のファイルがブロックファイルやキャラクタファイルになっている時がある。そいつを検索する方法。

typeオプションで、b ならブロックファイル、c ならキャラクタファイル。

 

 

lsしたかったら

 

消したかったら、、、略

Pocket