আমার একটি সিএমলিংক দরকার যা এটির মধ্যে থাকা ডিরেক্টরিটির সাথে তুলনামূলক সমাধান করে such এই জাতীয় জিনিসটি তৈরি করতে কোন আদেশ ব্যবহার করা হয়?
আমার একটি সিএমলিংক দরকার যা এটির মধ্যে থাকা ডিরেক্টরিটির সাথে তুলনামূলক সমাধান করে such এই জাতীয় জিনিসটি তৈরি করতে কোন আদেশ ব্যবহার করা হয়?
উত্তর:
ln -s ../some/other/file linkname
আপনার যে পথটি সরবরাহ করা হয়েছে তা ফাইলের সাথে সঞ্চিত। আপনি যখন ফাইলটি অ্যাক্সেস করেন তখন সঞ্চিত পথটি ফাইলের সাথে সম্পর্কিত এবং প্রসারিত হয়। আপনি লিঙ্কটি তৈরি করার সময় আপনি কোন ডিরেক্টরিতে ছিলেন তা জানেন না।
ln -s ../some/other/file /some/dir/linkname
ln -s ./file linkname
যেহেতু .
বর্তমান ডিরেক্টরী বোঝায়।
ln -s somedir/original-dir link-name
কাজ করে না. এটি নামের সাথে একটি ডিরেক্টরি তৈরি করে link-name
যাতে একটি অবৈধ লিঙ্ক রয়েছে। কমান্ড যে কাজ করেln -sr somedir/original-dir link-name
জিএনইউ কোর্টিলস'এলএন (> = ৮.১6) এর সাম্প্রতিক সংস্করণগুলি --relative
(বা -r
) বিকল্পটিকে সমর্থন করে যার অর্থ আপনি ln -s
২ টি পরম বা আপেক্ষিক (আপনার কার্যনির্বাহী ডিরেক্টরি সম্পর্কিত) পাথের সাথে কল করতে পারেন এবং এটি সঠিক আপেক্ষিক পাথটি সনাক্ত করতে পারে sylink লিখিত।
-r
যখন আপনি ক্রস কম্পাইল করা হয় এবং বিল্ড হোস্ট কিন্তু লক্ষ্যে আপেক্ষিক পাথ উপর পরম পাথ প্রয়োজন বিকল্প সহায়ক।
ln -r -s targetfile myalias
আপনাকে এটি ঠিক করতে সহায়তা করতে পারে
আপনার যা বোঝার দরকার তা মূলত হ'ল একটি সিমলিংক একটি পাঠ্য ফাইলের মতো একটি ডিরেক্টরি এন্ট্রির মতো একটি ফাইল রয়েছে। তাই যদি আপনি
echo ../poo >/file/name
তারপরেও এর সাথে বেশ মিল রয়েছে
ln -s ../poo /file/name
সিস্টেমটি আদৌ /file/../poo
বিদ্যমান কিনা তা বিবেচনা করে না , এটি কেবলমাত্র টুকরো টুকরো যা সিমলিংকে রেখে দেয়। যখন কোনও কিছু সিমলিংকটি খোলার চেষ্টা করে , তখনই সিস্টেমটি এটি সমাধান করার চেষ্টা করে।
আপনি যদি ফাইলের নাম সমাপ্তি সহ শেল ব্যবহার করছেন তবে এই বৈশিষ্ট্যটি আপনাকে আপনার বর্তমান ওয়ার্কিং ডিরেক্টরি সম্পর্কিত কোনও ফাইলের নাম সম্পূর্ণ করার অনুমতি দিয়ে জিনিসগুলিকে বিভ্রান্ত করতে পারে, এমনকি যদি আপনি এটির পরে অন্য কোনও ডিরেক্টরিতে কোনও সিমলিংকের লক্ষ্য হিসাবে ব্যবহার না করেন।
<
কীভাবে বরাদ্দ করা মেমরির পরিবর্তনের জন্য আপনাকে একটি নির্দিষ্ট সিস্টেম ফাইলকে সিমলিংক করতে দেয় । অবশ্যই <
সেই ডিরেক্টরিতে কোনও ফাইলের নাম নেই , এটি একটি খুব ছোট ফাইল-জাতীয় জিনিস তৈরির একটি সহজ উপায় যা নির্দিষ্ট প্ল্যাটফর্মের নিয়মিত পাঠ্য ফাইলের চেয়ে কিছু আকর্ষণীয় বৈশিষ্ট্যযুক্ত।
ওএস এক্স-তে আমার জন্য আপেক্ষিক লিঙ্কগুলি জটিল ছিল
~/Dropbox/git/dave-bot $ ln -s ../codyhess/bin ~/bin
~/Dropbox/git/dave-bot $ ln -s ../codyhess/bin/ ~/bin
উভয়ই কাজ করেনি (কিছু তৈরি হয়েছিল তবে এটি ডিরেক্টরি ছিল না)। আমি নিখুঁত পাথ ব্যবহার করে কাঙ্ক্ষিত লিঙ্কটি তৈরি করেছি ।
~/Dropbox/git/dave-bot $ ln -s ~/Dropbox/git/codyhess/bin/ ~/bin
ln -s Dropbox/git/codyhess/bin ~/bin
আমি কেবল আরও কীভাবে আপেক্ষিক পাথ (একটি বিস্তারিত উদাহরণ সহ) ব্যবহার করে একটি সিমলিংক তৈরি করব তা আরও ব্যাখ্যা করতে চেয়েছিলাম।
মন্তব্যগুলিতে যেমন ইগনাসিও ওয়াজকেজ-আব্রামগুলি উল্লিখিত হয়েছে, আপনাকে অবশ্যই ফাইল / ফোল্ডারের অবস্থান নির্দিষ্ট করতে হবে যেখানে সিমলিংক তৈরি হবে, আপনার বর্তমান ডিরেক্টরিটির সাথে সম্পর্কিত নয়।
EXAMPLE টি
যেখানে আপনি থাকেন /usr/share/nginx/html/_src/learn
আপনি একটি সিমবলিক লিঙ্ক তৈরি করবে coding
মধ্যে/usr/share/nginx/html
আপেক্ষিক সিমিলিংক (তত্ত্ব) তৈরি করুন:
sudo ln -s /path/to/source/file-or-folder/relative/from/symlink /path/to/symlink/relative/to/current/location
প্রকৃত আপেক্ষিক syMLink তৈরি করুন:
sudo ln -s ./_src/learn/coding ../../coding
আরও তথ্য (একই উদাহরণ)
current path: /usr/share/nginx/html/_src/learn
symlink(to be) relative to current path: ../../coding
symlink location (absolute): /usr/share/nginx/html/coding
folder/file relative to symlink location: ./_src/learn/coding
folder/file absolute path: /usr/share/nginx/html/_src/learn/coding