特定のサイズ以下のファイルを削除したいです。たとえば、次のファイルのリストがあります。
-rw-r--r-- 1 smsc sys 558 Apr 30 13:07 stats.sfe.1.20120430130513.xml.Z
-rw-r--r-- 1 smsc sys 388 Apr 30 15:32 stats.sfe.1.20120430153013.xml.Z
-rw-r--r-- 1 smsc sys 386 Apr 30 15:36 stats.sfe.1.20120430153513.xml.Z
-rw-r--r-- 1 smsc sys 389 Apr 30 15:42 stats.sfe.1.20120430154013.xml.Z
-rw-r--r-- 1 smsc sys 390 Apr 30 16:02 stats.sfe.1.20120430160013.xml.Z
-rw-r--r-- 1 smsc sys 385 Apr 30 16:12 stats.sfe.1.20120430161013.xml.Z
上記のリストからサイズの異なるファイルのみを削除したい386bそして390b。次のコマンドを使用して、特定のサイズより大きいファイルを削除できることを知っています<size>
。
find . -size +<size>-delete
しかし、サイズが与えられた値より小さいファイルの境界を追加するには?
ベストアンサー1
2つの基本色を連結できる-a
明示的な演算子です。AND
この例では、範囲の作成が使用されています-size
。
find . -size +386b -a -size -390b -exec rm -f {} \;
sizeは数値パラメータで、オプションで+
sumの前に置くことができます-
。からman 1 find
:
Numeric arguments can be specified as
+n for greater than n,
-n for less than n,
n for exactly n.