AppleのITMSP Transporterファイル用のXMLファイルを記述して、メタデータをApp Storeにアップロードするスクリプトを作成しようとしています。スクリーンショットの要件は、ファイル名、MD5チェックサム、およびバイト単位のファイルサイズです。
MD5チェックサムは簡単で、md5 -q image.png
で取得できます
しかし、画像ファイルのバイトサイズを取得しようとして苦労しています。 du -k image.png
コマンドを使用すると、キロバイト単位で切り上げられたサイズが返されます。たとえば、実際のサイズが5722バイトの場合、du
は8(8Kまたは8192バイトなど)を返しますが、これは正しくありません。 du
のデフォルトは512バイトのチャンクですが、それでも値を切り上げます(したがって、8ではなく16を返します)。
Lion OSX 10.7.4を実行しています。
1つの簡単なアプローチは次のとおりです。
stat -f%z image.png
stat
は通常、大量のデータを吐き出しますが、%z
formatは、サイズをバイト単位で選択します。
OSXではstat -f "%z bytes"
。