web-dev-qa-db-ja.com

サイズに基づいてフルパス名を出力するBashスクリプト

指定したサイズを超えてファイルのフルパス名を出力するスクリプトを記述しようとしていますが、サイズを引数として読み取る必要があります。私はbashにまったく詳しくないので、あまり試していません。

3
rikito104

特定のサイズのファイルを検索し、その場所を印刷するには、次のようにします。

find / -type f -size 1M

これにより、サイズが1 MBのファイルを/で検索し、完全な場所を出力します...

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

#!/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
3
origami