फ़ाइल संशोधन तिथियों (modification dates) को बनाए रखते हुए Mac ड्राइव के बीच किसी प्रोजेक्ट को कॉपी करने के लिए, Terminal में macOS के ditto कमांड का उपयोग करें और परिणाम सत्यापित करें। एक सीमा महत्वपूर्ण है: ditto दस्तावेज़ संशोधन और एक्सेस समय को सुरक्षित रखने का उल्लेख करता है, लेकिन मूल फ़ाइल निर्माण तिथि (creation date) का नहीं। यदि “तारीख” का अर्थ Finder का Created मान है, तो macOS के प्रलेखित कॉपी विकल्प इसे बनाए रखने का वादा नहीं करते हैं। स्रोत (source) ड्राइव को हटाने या रीफ़ॉर्मेट करने से पहले जांच लें कि कौन सी तारीख आपके लिए आवश्यक है।
सबसे पहले उस तारीख की पहचान करें जिसे आपको रखना है
फ़ाइल की Modified तारीख यह रिकॉर्ड करती है कि उसकी सामग्री पिछली बार कब बदली गई थी। इसकी Created तारीख एक अलग फ़ाइल-सिस्टम विशेषता (attribute) है। Finder Date Added भी दिखा सकता है, जो यह बताता है कि किसी आइटम को किसी विशेष स्थान पर कब जोड़ा गया था। Apple निर्माण और सामग्री-परिवर्तन तिथियों को अलग-अलग फ़ाइल-सिस्टम मेटाडेटा विशेषताओं के रूप में सूचीबद्ध करता है, इसलिए किसी एक को संरक्षित करने से यह साबित नहीं होता कि अन्य भी संरक्षित हैं। Apple की फ़ाइल-सिस्टम मेटाडेटा कुंजियाँ
प्रोजेक्ट संग्रह (archive) के लिए, Modified अक्सर वह तारीख होती है जिसका उपयोग अंतिम संपादित संस्करण की पहचान करने के लिए किया जाता है। यदि आपको विशेष रूप से Created या Date Added की आवश्यकता है—उदाहरण के लिए, क्योंकि कोई अन्य वर्कफ़्लो उस फ़ील्ड के आधार पर फ़ाइलों को क्रमबद्ध (sort) करता है—तो इसे एक अलग आवश्यकता के रूप में मानें। केवल इसलिए यह निष्कर्ष न निकालें कि Created सुरक्षित है क्योंकि Modified सुरक्षित रहा।
ditto के साथ प्रोजेक्ट कॉपी करें
एक नए गंतव्य (destination) फ़ोल्डर के लिए, दोनों ड्राइव कनेक्ट करें और Terminal खोलें। उदाहरण के वॉल्यूम और फ़ोल्डर नामों को Finder में दिखाए गए नामों से बदलें। गंतव्य फ़ोल्डर में पहले से ऐसी कोई प्रोजेक्ट कॉपी नहीं होनी चाहिए जिसे आपको रखना है: ditto मौजूदा गंतव्य में मर्ज हो सकता है और मेल खाने वाले नामों वाली फ़ाइलों को अधिलेखित (overwrite) कर सकता है।
ditto -V "/Volumes/SourceDrive/Project" "/Volumes/BackupDrive/Project"
यह प्रोजेक्ट फ़ोल्डर की सामग्री को Project नाम के गंतव्य फ़ोल्डर में कॉपी करता है; -V प्रत्येक कॉपी किए गए आइटम को प्रिंट करता है। macOS ditto मैनुअल कहता है कि कॉपी किए गए आइटम स्रोत के संशोधन और एक्सेस समय को बनाए रखते हैं, और रिसोर्स फोर्क्स तथा विस्तारित विशेषताओं (extended attributes) को डिफ़ॉल्ट रूप से संरक्षित किया जाता है। यह उन टाइमस्टैम्प्स में निर्माण समय को सूचीबद्ध नहीं करता है जिन्हें यह संरक्षित रखने का वादा करता है। DITTO(1), macOS मैनुअल पेज
यदि गंतव्य फ़ोल्डर पहले से मौजूद है, तो ditto स्रोत को उसमें मर्ज कर देता है। जब आप एक नई और साफ़ कॉपी चाहते हैं, तो एक नए, सही नाम वाले गंतव्य फ़ोल्डर का उपयोग करें, और परिणाम पर निर्भर होने से पहले त्रुटियों के लिए कमांड के आउटपुट की जांच करें। लापरवाही से --norsrc न जोड़ें: मैनुअल कहता है कि यह रिसोर्स फोर्क्स की कॉपी को अक्षम करता है और जब तक ओवरराइड न किया जाए, विस्तारित विशेषताओं और ACLs को भी अक्षम कर देता है। वे विशेषताएँ Mac प्रोजेक्ट फ़ाइलों के लिए महत्वपूर्ण हो सकती हैं।
cp -p निर्माण-तारीख (creation date) का समाधान क्यों नहीं है
-p के साथ अंतर्निहित cp कमांड संशोधन और एक्सेस समय को सुरक्षित रखता है, साथ ही उन अन्य विशेषताओं को भी जहाँ अनुमतियाँ (permissions) अनुमति देती हैं। Apple के cp मैनुअल में उस सूची में निर्माण समय भी शामिल नहीं है। यह cp -p को तब उपयोगी बनाता है जब आप संशोधन तिथियों को बनाए रखना चाहते हैं, लेकिन यह ड्राइव्स के बीच फ़ाइल की मूल Created तारीख को ले जाने का कोई प्रलेखित तरीका नहीं है। Apple का cp मैनुअल
कोई भी कमांड यह वादा नहीं कर सकता कि प्रत्येक विशेषता को हर गंतव्य पर समान रूप से दर्शाया जाएगा। ड्राइव का फ़ाइल सिस्टम और आपके खाते के लिए उपलब्ध अनुमतियाँ प्रभावित करती हैं कि कौन सा मेटाडेटा संग्रहीत या लागू किया जा सकता है। उदाहरण के लिए, ditto का मैनुअल केवल समर्थित गंतव्य वॉल्यूम और अनुमतियों पर ही कुछ विशेषताओं को संरक्षित करने का वर्णन करता है।
मूल फ़ाइलें हटाने से पहले सत्यापन करें
कॉपी करने के बाद, Finder में कुछ प्रतिनिधि फ़ाइलों का चयन करें और Get Info खोलने के लिए Command-I दबाएँ। स्रोत और गंतव्य के Modified मानों की तुलना करें; यदि यह आपकी आवश्यकता है तो Created की भी तुलना करें। Finder के List व्यू में, आप उपलब्ध तारीख कॉलमों का निरीक्षण कर सकते हैं और उनके अनुसार क्रमबद्ध कर सकते हैं, हालाँकि Apple सभी तारीख फ़ील्ड के ट्रांसफर होने की गारंटी के बजाय List व्यू के डेट-मॉडिफाइड डिस्प्ले का दस्तावेज़ीकरण करता है। Apple सहायता: Mac पर Finder में अपनी फ़ाइलें व्यवस्थित करें
प्रोजेक्ट में गहराई से मौजूद (nested) फ़ाइलों के साथ-साथ शीर्ष-स्तरीय फ़ोल्डर की भी जांच करें, और गंतव्य से मुख्य प्रोजेक्ट फ़ाइलें खोलें। यदि Modified मेल खाता है लेकिन Created बदल गया है, तो कॉपी ने प्रलेखित टाइमस्टैम्प संरक्षण तो प्राप्त कर लिया लेकिन निर्माण-तिथि की आवश्यकता को पूरा नहीं किया। स्रोत को तब तक सुरक्षित रखें जब तक आप यह पुष्टि न कर लें कि जिन तारीखों और प्रोजेक्ट सामग्रियों पर आप निर्भर हैं, वे गंतव्य पर मौजूद हैं।
यदि सटीक Created तिथियाँ आवश्यक हैं, तो केवल यह पुष्टि करने के बाद ही कोई कॉपी या संग्रह (archive) वर्कफ़्लो चुनें कि यह आपके स्रोत और गंतव्य फ़ाइल सिस्टम के लिए निर्माण तिथियों को संरक्षित और पुनर्स्थापित करने का स्पष्ट रूप से समर्थन करता है। Apple का ditto और cp -p दस्तावेज़ ऐसा कोई वादा नहीं करता है, इसलिए उस आवश्यकता के लिए किसी भी कमांड को सत्यापित समाधान न मानें।
स्रोत
फ़ाइल सिस्टम मेटाडेटा विशेषता कुंजियाँ — Apple Developer
DITTO(1) — macOS Manual Pages
cp(1) — Apple Open Source
Mac पर Finder में अपनी फ़ाइलें व्यवस्थित करें — Apple Support