এই সাধারণ সমস্যাটি সম্পর্কে কেন এত জটিল হতে হবে তা আমি খুব একটা পাই না - তবে সম্ভবত আমি প্রশ্নটি ভুল উপায়ে পেয়েছি। যাইহোক: যখন আমার অনুরূপ কার্যকারিতা প্রয়োজন তখন আমি ব্যবহার করেছি:
ls -lL
এটা আমার ক্ষেত্রে কৌতুক করেছে। থেকে ls
মানুষ পৃষ্ঠা:
-L, --dereference
when showing file information for a symbolic link,
show information for the file the link references
rather than for the link itself
উদাহরণস্বরূপ, আমি /media/stick
আমার ইউএসবি স্টিকের ডেটা অ্যাক্সেস করার জন্য একটি শর্টকাট তৈরি করেছি । ls -l /media/stick
আসল লিঙ্কটি ls -lL /media/stick
প্রদর্শন করবে , যখন ইউএসবি স্টিকের বিষয়বস্তুগুলি প্রদর্শন করবে ।
এর অভ্যন্তরীণ কাজের মধ্যে পার্থক্য সম্পর্কে গভীরতর গবেষণার পরে -H
এবং -L
অবশেষে আমি শ্যালো থটস ব্লগে এই বিষয়টি সম্পর্কে একটি চমৎকার নিবন্ধটি পেলাম (এমনকি আপনার সন্তুষ্টির জন্য কিছু ঝরঝরে শেল স্ক্রিপ্টের কৌশলগুলিও দেখিয়েছি!)
এটি দুটি বিকল্পের মধ্যে সূক্ষ্ম পার্থক্যগুলি নির্দেশ করে (মূল ম্যানুয়ালের চেয়ে ভালভাবে!)
-H
- কেবলমাত্র লিঙ্কগুলিতে কমান্ড লাইনে সুস্পষ্টভাবে উল্লেখ করা হয়েছে
-L
- কমান্ড লাইনে উল্লেখ না করা সত্ত্বেও বিন্যস্ত লিঙ্কগুলি
(এই দু'টি যখন সাধারণ কাজকর্মের সাথে ব্যবহৃত হয় , তখন সাধারণভাবে আউটপুটটিতে কোনও পার্থক্য থাকা উচিত নয়))
এছাড়া: উচিত দীর্ঘ ফর্ম (মনে রাখা পছন্দ করা --option
), এটা খুব সম্ভবত মুখস্থ করা কম কষ্টকর ব্যাপার --dereference
এর বেজায় লম্বা দৈত্য চেয়ে --dereference-command-line-symlink-to-dir
।