サイズに応じてフルパス名を印刷するBashスクリプト

サイズに応じてフルパス名を印刷するBashスクリプト

指定されたサイズのファイルのフルパス名を印刷するスクリプトを作成しようとしていますが、サイズをパラメーターとして読み取る必要があります。私はbashにまったく慣れていないので、あまり試していませんでした。

答え1

以下を使用すると、特定のサイズのファイルを検索してその場所を印刷できます。

find / -type f -size 1M

/1MBのサイズのファイルを検索し、全体の場所を印刷します。

これをスクリプトとして使用するには、次のように使用できます。

#!/bin/sh
find / -type f -size $*

ここで、パラメータはファイルサイズです。100M

duファイルサイズの使用または表示の他の例ls

find / -type f -size 1M -exec du {} \;
# or
find / -type f -size 1M -exec ls -lh {} \; 

sortとduの代替

find / -type f -size 5M -exec du -sh {} \; | sort -h

関連情報