बैच हटाएं exif जानकारी


जवाबों:


17

यदि आप विशिष्ट अनुभागों को निकालना या बदलना चाहते हैं तो अन्य ExifTool सुझाव बहुत अच्छे हैं। लेकिन अगर आप सभी मेटाडेटा को पूरी तरह से हटा देना चाहते हैं, तो इसका उपयोग करें (मैन पेज से):

   exiftool -all= dst.jpg
        Delete all meta information from an image.

तुम भी इस्तेमाल कर सकते हैं jhead -de ध्वज के साथ,:

   -de    Delete the Exif header entirely.  Leaves  other  metadata
          sections intact.

ध्यान दें कि दोनों ही मामलों में, EXIF ​​केवल एक प्रकार का मेटाडेटा है। अन्य मेटाडेटा अनुभाग मौजूद हो सकते हैं, और आप जो करना चाहते हैं, उसके आधार पर, इन दोनों कार्यक्रमों में कुछ को संरक्षित करने या इसे हटाने के लिए अलग-अलग विकल्प हैं। उदाहरण के लिए, jhead -purejpgछवि प्रदान करने के लिए आवश्यक सभी जानकारी स्ट्रिप्स नहीं है।


6

EXIF हैंडलिंग टूल exiv2में EXIF ​​डेटा को हटाने के लिए एक कमांड है:

exiv2 rm image.jpg

छवि से सभी EXIF ​​डेटा निकालता है।

मौजूदा निर्देशिका में सभी JPEG छवियों से EXIF ​​डेटा को निकालने के लिए उपयोग करें

exiv2 rm *.jpg

मौजूदा निर्देशिका में सभी JPEG छवियों से EXIF ​​डेटा को हटाने के लिए, और इसके सभी उपनिर्देशिका पुनरावर्ती रूप से उपयोग करें:

find . -type f -iname '*.jpg' | xargs exiv2 rm

इससे पहले कमांड का परीक्षण करना एक अच्छा विचार है।

यह देखने के लिए कि कौन सी फाइलें मिली हैं:

find . -type f -iname '*.jpg' | less

यह देखने के लिए कि किन कमांडों को निष्पादित किया जाएगा:

find . -type f -iname '*.jpg' | xargs echo exiv2 rm | less

कमांड को प्रिंट करने echoसे पहले सम्मिलित करें exiv2, इसे चलाने के बजाय नोट करें ।


3

आपको एक्सफोलिट जैसे कुछ ओपनसोर्स टूल को देखना चाहिए । बहुत से विकल्प है (एक्सिफ़, xmp, iptc के लिए)।

exiftool -overwrite_original \
-xmp:Creator='votre nom' \
-xmp:WebStatement='http://creativecommons.org/licenses/by-nc-nd/3.0/' \
-xmp:Rights='Copyright votre nom. This work is licensed under a Creative Commons Attribution-Noncommercial-No Derivative Works 3.0  License.' \
-iptc:By-line='votre nom' \
-iptc:CopyrightNotice='Copyright votre nom. This work is licensed under a Creative Commons Attribution-Noncommercial-No Derivative Works 3.0  License.' \
-exif:Artist='votre nom' \
-exif:Copyright='Copyright votre nom. This work is licensed under a Creative Commons Attribution-Noncommercial-No Derivative Works 3.0  License.' \
votre_fichier.jpg

आगे आपको केवल एक छोटी सी स्क्रिप्ट लिखनी चाहिए जो आपकी फ़ाइलों (jpg) को सूचीबद्ध करती है और सामान करती है। किसी फ़ील्ड की सामग्री को निकालने के लिए आपको इसे "^" पर सेट करना होगा; निम्नलिखित उदाहरण की तरह:

-Software= ^
-ModifyDate= ^
-CreatorTool= ^
-MetadataDate= ^
-Rating= ^
-ImageNumber= ^
-WhiteBalance= ^
-Temperature= ^
-Tint= ^
-IncrementalTemperature= ^
-IncrementalTint= ^
-Exposure= ^
-Shadows= ^
-Brightness= ^
-Contrast= ^
-Saturation= ^
-Sharpness= ^
-LuminanceSmoothing= ^
-ColorNoiseReduction= ^
-ChromaticAberrationR= ^
-ChromaticAberrationB= ^
-VignetteAmount= ^
-VignetteMidpoint= ^
-ShadowTint= ^
-RedHue= ^
-RedSaturation= ^-GreenHue= ^
-GreenSaturation= ^
-BlueHue= ^
-BlueSaturation= ^
-FillLight= ^
-Vibrance= ^
-HighlightRecovery= ^
-Clarity= ^
-Defringe= ^
-HueAdjustmentRed= ^
-HueAdjustmentOrange= ^
-HueAdjustmentYellow= ^
-HueAdjustmentGreen= ^
-HueAdjustmentAqua= ^
-HueAdjustmentBlue= ^
-HueAdjustmentPurple= ^
-HueAdjustmentMagenta= ^
-SaturationAdjustmentRed= ^
-SaturationAdjustmentOrange= ^
-SaturationAdjustmentYellow= ^
-SaturationAdjustmentGreen= ^
-SaturationAdjustmentAqua= ^
-SaturationAdjustmentBlue= ^
-SaturationAdjustmentPurple= ^
-SaturationAdjustmentMagenta= ^
-LuminanceAdjustmentRed= ^
-LuminanceAdjustmentOrange= ^
-LuminanceAdjustmentYellow= ^
-LuminanceAdjustmentGreen= ^
-LuminanceAdjustmentAqua= ^
-LuminanceAdjustmentBlue= ^
-LuminanceAdjustmentPurple= ^
-LuminanceAdjustmentMagenta= ^
-SplitToningShadowHue= ^
-SplitToningShadowSaturation= ^
-SplitToningHighlightHue= ^
-SplitToningHighlightSaturation= ^
-SplitToningBalance= ^
-ParametricShadows= ^
-ParametricDarks= ^
-ParametricLights= ^
-ParametricHighlights= ^
-ParametricShadowSplit= ^
-ParametricMidtoneSplit= ^
-ParametricHighlightSplit= ^
-SharpenRadius= ^
-SharpenDetail= ^
-SharpenEdgeMasking= ^
-ConvertToGrayscale= ^
-ToneCurveName= ^
-CameraProfile= ^
-HasSettings= ^
-CropTop= ^
-CropLeft= ^
-CropBottom= ^
-CropRight= ^
-CropAngle= ^
-CropWidth= ^
-CropHeight= ^
-CropUnit= ^
-HasCrop= ^
-AlreadyApplied= ^
-ToneCurve= ^
-CameraProfile= ^
-ApplicationRecordVersion= ^

3

एक्सफ़नटूल का उपयोग करने का विन्सेंट का सुझाव अच्छा है। मेरा सुझाव है कि आप एक स्क्रिप्ट लिखें जो फ़ाइल नाम के किसी भी तर्क को स्वीकार करता है, और उस पर आपके इच्छित स्ट्रिप फ़ंक्शन चलाता है। फिर findअपने फ़ाइल सेट पर इस स्क्रिप्ट को निष्पादित करने के लिए उपयोग करें। स्क्रिप्ट कुछ इस तरह दिखाई देगी:

#!/bin/sh
exiftool -overwrite_original -ExifFieldName=^ [-MoreExifFieldNames=^] $1

मान लीजिए कि आप इसे सहेजते हैं /usr/local/bin/strip_exif.sh, तो आप इसे उस फ़ोल्डर में जाकर कॉल कर सकते हैं जिसमें आपकी jpeg फाइलें इस तरह हैं:

find -type f -iname '*.jpg' -exec strip_exif.sh {} \;

संपादित करें: सभी टैग्स को अलग करने के तर्क के बारे में mattdm के उत्तर को देखने के बाद , मुझे लगता है कि आप स्क्रिप्ट को छोड़ सकते हैं और सिर्फ इस तरह खोज का उपयोग कर सकते हैं:

find -type f -iname '*.jpg' -exec exiftool -all= {} \;
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.