web-dev-qa-db-ja.com

ExifTool:特定のタグを除くすべてのメタデータを削除します

exiftool -common(カメラモデル、シャッタースピード、絞り、ISOなど)レンズモデル、色空間、埋め込みICCプロファイルでリストされている一般的な写真タグを除いて、JPEGファイルからすべてのメタデータを削除しようとしています。

質問からの回答を使用して exiftool:exifデータを削除しますが、特定のタグをいくつか保持します 、次のコマンドが生成されます。問題は、それぞれのフラグでexiftoolを使用して確認できるように、両方ともシャッター速度、絞り、および埋め込まれたICCプロファイルを削除することです。

exiftool -all= -tagsFromFile @ -common -LensModel -ColorSpace -icc_profile:all original.JPG

exiftool -all= -tagsFromFile @ -common -aperture -ShutterSpeed -LensModel -ColorSpace -icc_profile:all original.JPG

それらは両方とも警告を生成します:

Warning: Sorry, filesize is not writable

コマンドの形式が正しくありませんか、それともExifToolのバグですか?この動作は、ExifToolバージョン10.40で確認されています。

2
Kyselejsyreček

Commonショートカットタグは、より多くのデータ収集タグであり、実際には、あるファイルから別のファイルに情報をコピーするためのものではありません(タグのリストについては、 ショートカットタグ を参照してください)。そのショートカットの対象となるタグの多くは、ファイルシステムタグ(FileSize)、MakerNotesタグ(Quality)、または複合タグ(ApertureShutterSpeed)のいずれかです。 。 FileSizeの場合、宛先ファイルのサイズを任意に変更することはできないため、filesize is not writableエラーが発生します。

Makernotesタグの場合、個別にコピーまたは作成することはできません。 -MakerNotesを使用してブロックとしてコピーする必要があります。 Qualityタグをコピーしようとしていない可能性がありますが、この点はコンポジットタグに関しては重要になります。

複合タグ ファイル内のタグではありません。それらは他の複数のタグから派生しています。 ApertureShutterSpeedは2つの例です。個別に存在しないため、別のファイルにコピーすることはできません。基になっているタグをコピーする必要があります。 Apertureは、実際にファイルにあるかどうかに応じて、FNumberまたはApertureValueのいずれかに基づいています。 ShutterSpeedは、ExposureTimeShutterSpeedValue、および/またはBulbDurationに基づいています。 ApertureShutterSpeedを正しく「コピー」するには、それらが基づいている上記のタグをコピーする必要があります。また、これらのタグの一部はMakerNotesにのみ存在する可能性があるため、Makernotes全体をコピーする必要があります。

ICC_Profileは「安全でない」タグと見なされ、明示的にリストされていない限りコピーされません。 -ICC_Profile内の個々のタグの一部が書き込み可能でないため、-ICC_Profile:allが機能しない場合は、おそらくICC_Profileを含むブロックとしてコピーする必要があります。

tl; dr:exiftoolコマンドには何の問題もありません。あなたが思っていることを実行しないだけです。

2
StarGeek