আমার কাছে বিবিধ দস্তাবেজগুলিতে পূর্ণ একটি "মাইফিলস" ডিরেক্টরি রয়েছে এবং এর কাঠামোটি পরিবর্তন করতে চাই না।
অতএব আমি নথির প্রতিটি শ্রেণীর জন্য অন্যান্য বেশ কয়েকটি ডিরেক্টরি তৈরি করেছি। উদাহরণস্বরূপ, আমি একটি "চিত্র" ডিরেক্টরির প্রতিটি symlinks হয়েছে আছে .jpgবা .cr2বিবরণ এবং অন্যান্য মেটাডেটা সঙ্গে প্রতিটি সিমবলিক লিঙ্ক (একই ফাইলের নাম সহ) জন্য "myfiles" ডিরেক্টরির প্লাস অন্যান্য বর্ণনামূলক ফাইলের মধ্যে ফাইল। / চিত্র ডিরেক্টরিতে থাকা সিমলিংকের মূল লিঙ্কযুক্ত ফাইলের থেকে আলাদা নাম থাকতে পারে।
আমি "মাইফিলস" ডিরেক্টরিতে প্রতিটি চিত্র ফাইলের "চিত্র" ডিরেক্টরিতে একটি সিমিলিংক রয়েছে তা নিশ্চিত করার সহজতম উপায়টি খুঁজতে চেষ্টা করছি।
ফোল্ডার কাঠামোর একটি উদাহরণ দেখুন
/myfiles/a.doc
/myfiles/b.jpg
/myfiles/c.cr2
/myfiles/d.mov
ফলাফল করা উচিত
/images/b_800x600.jpg
/images/b_800x600.desc
/images/c_3820x5640.cr2
/images/c_3820x5640.cr2
ls -lআপনি ব্যবহার করে দ্বিতীয় কলামে হার্ডলিঙ্ক গণনা দেখতে পাবেন।
rmএই pax -rwl -s "\|.*regex|modifes_filename|" /path/to/myfiles/*.jpg /path/to/jpg_dirসিএমলিংক ডায়ার করে এবং উদাহরণস্বরূপ কেবলমাত্র আপনার জেপিএসের সাথে মেলে এমন ফাইলগুলির জন্য প্রোগ্রামিকভাবে পরিবর্তিত ফাইল নামগুলির সাথে হার্ডলিঙ্কগুলি পেতে ব্যবহার করুন । আপনি এর থেকে অনেক কিছু অর্জন করতে পারবেন - যেমন পরিবর্তনের সময় এবং ইত্যাদির উপর ভিত্তি করে
find /myfiles -type fকোনও ফাইলের ফলাফলগুলি সংরক্ষণ করতে পারেন তারপরে সিলেক্ট করাfind /images -type l -exec readlink {} \; | egrep myfilesফাইলগুলির একটি তালিকা পেতে ব্যবহার করতে পারেন/imagesএবং ফলাফলগুলি পুনরুদ্ধারsedকরে প্রতিটি ফাইলের উপরের পাথগুলি মুছে ফেলার জন্য যে ফাইলগুলি ইতিমধ্যে সংরক্ষণ করা হয়েছে সেহেতু সিমবলিক লিঙ্ক আছে এবং ফাইল অবশিষ্ট যে ফাইল না সিমবলিক লিঙ্ক আছে।