জেপিইজি এক্সআইএফ মেটাডেটা থেকে ফাইল তৈরির তারিখ পরিবর্তন করুন


29

কোনও এফটিপি সাইটে আপলোড করার সময়, আসল ফাইল তৈরির তারিখটি হারিয়ে গেছে বলে মনে হয় এবং পরিবর্তে আমি আপলোডের তারিখটি পাই। তবে ফাইলের এক্সিফ ডেটা সঠিক। Exif তারিখ থেকে তৈরি তারিখ পরিবর্তন করার জন্য কি ব্যাচের কোনও সরঞ্জাম আছে?


1
আপনি সবচেয়ে সহায়ক বলে মনে হয় যে উত্তর গ্রহণ গ্রহণ বিবেচনা করুন। এইভাবে, অন্যান্য ব্যক্তি যারা এই প্রশ্নের সন্ধান করে এটি "উত্তর দেওয়া" হিসাবে চিহ্নিত করবে। এটি এমন একজন ব্যক্তির প্রতিদান দেওয়ার একটি উপায় যা আপনাকে সাহায্য করতে তাদের সময় ব্যয় করেছে।
দিমিত্রি গ্রিগরিয়েভ

উত্তর:


27

এক্সআইএফ হ্যান্ডলিং সরঞ্জামটির জন্য exiv2এটি একটি বিল্টিন বিকল্প রয়েছে:

exiv2 -T rename image.jpg

mtimeEXIF মেটাডেটাতে সঞ্চিত তারিখের জন্য সর্বশেষ ফাইল সংশোধন করার সময় সেট করে ।

আপনি তৈরির সময়টি ব্যবহার করার জন্য বলেছিলেন - তবে এটি ইউনিক্সের মতো সিস্টেমে ব্যবহৃত হয় না - এবং এর জন্য ভাল কারণ রয়েছে: /unix/27297/why-doesnt-nix-keep-track -of-ফাইল-সৃষ্টি-সময়

আমি নিশ্চিত যে আপনি সময় তৈরির সময়টি সময়টি আসলে তা mtime- কোনও সমস্যা নেই।


থেকে man exiv2:

NAME
        exiv2 - Image metadata manipulation tool

 SYNOPSIS
        exiv2 [options] [action] file ...

 DESCRIPTION
        exiv2 is a program to read and write Exif, IPTC and XMP image metadata and image com‐
        ments. The following image formats are supported:

 [ ... ]

 mv | rename
       Rename files and/or set file timestamps according to the Exif create time‐
       stamp.  Uses  the  value  of  tag  Exif.Photo.DateTimeOriginal  or, if not
       present, Exif.Image.DateTime to determine the timestamp. The filename for‐
       mat can be set with -r fmt, timestamp options are -t and -T.

 [ ... ]

 -T     Only  set  the  file  timestamp according to the Exif create timestamp, do not
        rename the file (overrides -k). This option is only  used  with  the  'rename'
        action.  Note:  On Windows you may have to set the TZ environment variable for
        this option to work correctly.


-tবিপরীতে করতে বিকল্প দেখুন ।


আমি ফাইলের টাইমস্ট্যাম্প থেকে এক্সআইএফ টাইমস্ট্যাম্প সেট করার অর্থ "বিপরীত" এর ব্যাখ্যা করব, তবে এটি তা নয় -t। প্রকৃতপক্ষে, এটি আসলে কী -Tকরে তার একটি সুপারসেট করে বলে মনে হচ্ছে।
মাইকেল

7

আপনি যদি সিপিএএন থেকে এক্সটিফটল ইনস্টল করেন তবে আপনি নিম্নলিখিত ফাইলটি চালাতে পারবেন, ধরে নিবেন যে আপনার সমস্ত ফাইল "সমস্ত" নামক ডিরেক্টরিতে রয়েছে

#!/bin/sh
for i in all/*; do
    SPEC=`exiftool -t -s -d "%Y-%m-%d %H:%M:%S" -CreateDate "$i"`
    read X DATE <<<${SPEC}
    echo "$i:$DATE"
    touch -d "$DATE" "$i"
done

এই স্ক্রিপ্টটি কি করছে তা আপনি বর্ণনা করতে পারেন? বিশেষতexiftool
ব্যবহারকারী 5359531

5

ধরে নেওয়া, 'ভোলকার সিগেল' দ্বারা উল্লিখিত হিসাবে, আপনি সম্ভবত মাইটাইম বলতে চাইছেন, আমি সহজভাবে বিল্ট ফাংশন ব্যবহার করব ..

মত:

 $ exiftool "-DateTimeOriginal>FileModifyDate" test.jpg

এটি "এক্সিফ ফিল্ড" ডেটটাইমঅরজিনাল "তথ্য গ্রহণ করবে এবং ফাইল" টেস্ট.জেপিজি "ফাইলটির পরিবর্তিত তারিখ / সময় তথ্য সেট করতে এটি ব্যবহার করবে।

উদাহরণ:

$ ls -la test.jpg
-rw-r-----@ 1 user  18329968  2432451 14 Out 17:57 test.jpg

$ exiftool -DateTimeOriginal test.jpg
Date/Time Original              : 2015:10:09 13:29:58

$ exiftool "-DateTimeOriginal>FileModifyDate" test.jpg
    1 image files updated

$ ls -la test.jpg
-rw-r-----@ 1 user  18329968  2432451  9 Out 13:29 test.jpg

4

এটি jheadকমান্ড ব্যবহার করেও তৈরি করা যেতে পারে :

$ jhead -ft file.jpg

Jhead 3.0 এর জন্য অপশনটি -dsft-ftবিপরীত না।
টেসকুইন ক্রিড্ড

জেহাদকে একমাত্র এক্সআইএফ সরঞ্জাম বলে মনে হচ্ছে যা এক্সআইএফআইএফ শিরোলেখের সাথে উপদ্রব সৃষ্টি করে না - এক্সিফ্টোল এবং এক্সিভি 2 আসলে ফাইলের আকার বাড়ায় এবং শিরোনামকে চারপাশে সরিয়ে দেয়, যা আমার কাছে একেবারেই অগ্রহণযোগ্য।
মাইকেল

3

এক্সিফটুল বেশিরভাগ এক্সআইএফ তথ্য পড়তে ও পরিচালনা করতে পারে, যার মধ্যে তারিখ / সময়ের মূল সংগ্রহ বা ডেটা এক্সআইএফ ট্যাগ তৈরি করা। আপনি ফাইলগুলির নাম পরিবর্তন করতে বা তাদের টাইমস্ট্যাম্পগুলি পরিবর্তন করতে এই তথ্যটি ব্যবহার করতে পারেন। উদাহরণ স্বরূপ:

find -name '*.jpg' | while read PIC; do
    DATE=$(exiftool -p '$DateTimeOriginal' $PIC |
    sed 's/[: ]//g')
    touch -t $(echo $DATE | sed 's/\(..$\)/\.\1/') $PIC
done

এটি বর্তমান ডিরেক্টরিতে সমস্ত জেপিজি ফাইলগুলি সন্ধান করবে এবং টাইমস্ট্যাম্পগুলি আপডেট করবে।

আপনি যদি সেই তারিখের উপর ভিত্তি করে এই ফাইলগুলিকে একটি নামও দিতে চান (এটি কাজে আসে) তবে লাইনের mv -i $PIC $(dirname $PIC)/$DATE.jpgআগেও যুক্ত করুন done

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.