私はUNIXを初めて使用していますが、UNIX(AIX)のファイルサイズについて質問があります。
ls -ltr
表示fileA
サイズは59096です。私が知っている1バイト単位なので、ほぼ0.06MBです。ただし、zip
1MBを超えるファイルが必要なスクリプトは、このファイルも圧縮します。
find [dir] -type f -size +1M -exec gzip {} \;
私のテストでは、同じfileA
サイズを115MBと評価してファイルを圧縮します。
誰でも助けることができますか?私の目標は、1MBを超えるすべてのファイルを圧縮することです。
答え1
AIXはfind
+1Mをサポートしていないようです。
マニュアルページでは、
- サイズn
ファイル長がそれぞれ512バイトで指定されたnブロックの場合、Trueと評価されます。ファイルサイズは比較目的で最も近いブロックに丸められています。
-サイズNC
ファイルの長さが正確にnバイトの場合はTrueと評価されます。 n 変数の末尾に c を追加すると、ファイルサイズがブロックではなく 1 バイトで測定されることを示します。
利用可能でなければなりません。
find [dir] -type f -size +1048575c -exec gzip {} \;