30 দিনেরও বেশি পুরানো একটি ডিরেক্টরি, ফাইল এবং ডিরেক্টরি মুছে ফেলার জন্য আমি নীচের কমান্ডটি ব্যবহার করি এবং তাদের সংরক্ষণাগার ডিরেক্টরিতে সরাতে পারি যা আমি কয়েক সপ্তাহ পরে মুছতে পারি যদি কেউ তাদের ফাইলগুলি ফিরে না জিজ্ঞাসা করে। লক্ষ্য ডিরেক্টরিতে ব্যবহারকারীর নাম অনুসারে সাব-ডিরেক্টরি রয়েছে, সুতরাং সংরক্ষণাগার ডিরেক্টরিটিও থাকবে।
এই হুকুমটি আমি ব্যবহার করি:
find /path/to/directory/username/ -mtime +30 -exec mv "{}" /path/to/archive/username/ \;
উবুন্টুকে জিজ্ঞাসা করার প্রশ্নের উত্তর দেওয়ার জন্য আমি এর পরিবর্তিত সংস্করণটির পরামর্শ দিয়েছিলাম, অন্য একজন ব্যবহারকারী কোডটি সম্পাদনা করে লাইনের শেষ পরিবর্তন করার \;
জন্য +
কারণ এটি দ্রুত (এবং আরও সঠিক?)। এখানে দেখো
যাইহোক, +
এইভাবে ব্যবহার করে যদি -exec
কমান্ডটি ব্যবহৃত হয় ls -lh
তবে আমি যে প্রকৃত কমান্ডটি ব্যবহার করি তা না হয়। যদি আমি এটির সাথে চেষ্টা করি তবে আমি +
একটি ত্রুটি বার্তা পাই:
find: missing argument to '-exec'
আমি বুঝতে পারি না কেন এটি এমন আচরণ করছে, বা সঠিক আদেশটি কী হবে। দয়া করে কেবল একটি আদেশ সংশোধন পোস্ট করবেন না, আমি কেবল পরামর্শকে অন্ধভাবে অনুসরণ না করে বুঝতে চাই।
+
একই কমান্ডে একাধিক যুক্তি সরবরাহ করি , কিন্তু mv
এটি সহ্য করতে পারি না!