मैं एक स्क्रिप्ट पर काम कर रहा हूं जो केवल उन फाइलों को कॉपी करेगी जो पिछले दिन से किसी अन्य फ़ोल्डर में बनाई गई हैं। मेरे पास जो समस्या है, वह वह स्क्रिप्ट है जिसकी मेरे पास एक दिन से कम की फाइलों की बजाय स्रोत निर्देशिका में सभी फाइलों की प्रतियां हैं।
यह वही है जो मेरे पास है:
find . -mtime -1 -exec cp --preserve --parents -a "{}" /somefolder \;
उपरोक्त कोड स्रोत निर्देशिका में सभी फ़ाइलों की प्रतिलिपि बनाता है। अगर मैं 'cp' के सभी तर्कों को हटाता हूं तो यह काम करता है:
find . -mtime -1 -exec cp "{}" /somefolder \;
उपरोक्त कोड केवल नवीनतम फ़ाइलों की प्रतिलिपि बनाता है जैसा मैं चाहता हूं, लेकिन मुझे cp तर्कों का उपयोग करके विशेषताओं को संरक्षित करने की आवश्यकता है।
मैंने चर भी आज़माया है और यह सोचने के लिए कि शायद -सेक्स विकल्प मुद्दा था:
files="$(find -mtime -1)"
for file in "$files"
do
cp --parents --preserve -a file /somefolder
हालाँकि, एक ही समस्या में परिणाम लूप के लिए ऊपर, सभी फ़ाइलों की प्रतिलिपि बनाई जाती है। यदि मैं $ फ़ाइलों को केवल उन फ़ाइलों को प्रतिध्वनित करता हूं जिनकी मुझे आवश्यकता है
में इससे कैसे चला सकता हूँ?
find /sourcefolder -type f -mtime -1 -exec cp -a "{}" /somefolder \;