হার্ড লিঙ্কগুলি কি উইন্ডোজ শর্টকাটের সমতুল্য?


52

উইকিপিডিয়া একটি হার্ড লিঙ্কটি এরূপ হিসাবে সংজ্ঞায়িত করে :

একটি ডিরেক্টরি এন্ট্রি যা কোনও ফাইল সিস্টেমে একটি ফাইলের সাথে নাম যুক্ত করে। (একটি ডিরেক্টরি নিজেই একটি বিশেষ ধরণের ফাইল যা এই জাতীয় এন্ট্রিগুলির একটি তালিকা রয়েছে।) শব্দটি ফাইল সিস্টেমে ব্যবহৃত হয় যা একই ফাইলের জন্য একাধিক হার্ড লিঙ্ক তৈরি করতে দেয়।

আমি ভাবছি যে হার্ড লিঙ্কের ধারণাটি শর্টকাটের উইন্ডোজ ধারণার সমান ।

হার্ড লিঙ্কগুলি শর্টকাটের সমতুল্য না হলে হার্ড লিঙ্কগুলির নিকটতম উইন্ডোজ বৈশিষ্ট্যটি কী?


1
আপনার ভাগ করা উইকি পৃষ্ঠা থেকে আসলে কিছু দুর্দান্ত রেফারেন্স রয়েছে।
eccentricSam

8
মাইক্রোসফ্ট এনটিএফএস হার্ডলিঙ্ককে সমর্থন করে এবং তারা ইউনিক্স হার্ডলিঙ্কের সাথে খুব মিল। আমি মনে করি শর্টকাটগুলি উইন্ডোজের পরিবেশের বিশেষ অবজেক্ট তবে এগুলি বাস্তব হার্ডলিঙ্কগুলির বিপরীতে ফাইলসাইম সংস্থার সাথে সম্পর্কিত নয়
কিউই

নিম্নলিখিত লিঙ্কটি একটি ভাল ব্যাখ্যা দেয়: comptb.cects.com/…

3
আমি মনে করি যে সমান্তরালটি বিভ্রান্তিকর, শর্টকাট হ'ল "ইন্টারফেস" টার্গেট সম্পর্কিত পাঠ্য তথ্যের সাথে কেবল ফাইলগুলি লিঙ্ক করে যা ইন্টারফেস দ্বারা ব্যাখ্যা করা হয় এবং ফাইল সিস্টেম দ্বারা নয়। একটি কমান্ড লাইন থেকে তারা আসলে ফাইল সিস্টেমের অর্থে কোনও কিছুর দিকে নির্দেশ করছে না। উইন্ডোজ (অথবা ভাল বলেছেন এনটিএফএস) সঠিক symlinks হয়েছে en.wikipedia.org/wiki/NTFS_symbolic_link যে শর্টকাট কিংবা hardlinks নয়। আমি সত্য যে আমি এগুলি উইন্ডোতে যে কোনও জায়গায় ড্রপবক্স ফোল্ডার রাখতে ব্যবহার করি, এটি শর্টকাট দিয়ে করা যায় না।
alfC

5
উইন্ডোজ শর্টকাট ফাইলগুলি অনেকটা লিনাক্স .ডেস্কটপ ফাইলগুলির মতো। লিনাক্স সিমলিংক এবং হার্ড লিঙ্কগুলি একটি সম্পূর্ণ আলাদা জিনিস যা কখনও কখনও একই উদ্দেশ্যে কাজ করে।
মাইকেববকক

উত্তর:


113

না, একটি হার্ড লিঙ্ক সম্পূর্ণ আলাদা। একটি সফট লিঙ্ক একটি উইন্ডোজ শর্টকাটের কাছাকাছি (যদিও গুরুত্বপূর্ণ পার্থক্য রয়েছে, প্রতীকী লিঙ্কগুলি হার্ড লিঙ্কগুলির চেয়ে উইন্ডোজ শর্টকাটের সাথে বেশি মিল)। একটি হার্ড লিঙ্ক একটি আলাদা জিনিস এবং এটি আপনার প্রায় প্রয়োজন হবে না।

সংক্ষেপে, এই আদেশ দিয়ে একটি নরম লিঙ্ক তৈরি করা হয়েছে:

ln -s foo bar

তারপরে যদি আপনি দৌড়ে যান তবে ls -lআপনি দেখতে পাবেন:

lrwxrwxrwx 1 terdon terdon 3 Mar 10 15:58 bar -> foo
-rw-r--r-- 2 terdon terdon 0 Mar 10 15:58 foo

->মানে যে barএকটি লিঙ্ক foo। সুতরাং, barউদাহরণস্বরূপ একটি পাঠ্য সম্পাদক সহ ওপেনিং প্রকৃতপক্ষে পৃথক ফাইলটি খুলবে foo। তবে মুছে barফেললে শর্টকাটটি মুছে যাবে, এটি ফাইলটিকে প্রভাবিত করবে না foo

অন্যদিকে, হার্ড লিঙ্কগুলি এই আদেশ দ্বারা তৈরি করা হয়েছে:

ln foo bar

আপনি যদি এখন চালনা করেন ls -lতবে ফাইলগুলির মধ্যে কোনও সম্পর্কের কোনও ইঙ্গিত নেই:

-rw-r--r-- 2 terdon terdon 0 Mar 10 15:58 bar
-rw-r--r-- 2 terdon terdon 0 Mar 10 15:58 foo

তবে — এবং এটি খুব গুরুত্বপূর্ণ — এগুলি আসলে একই ফাইল । ইউনিক্স ফাইল সিস্টেমে ফাইলগুলি ইনোড ব্যবহার করে সংরক্ষণ করা হয় ; একটি ইনোডটি মূলত সেই পদ্ধতিতে যেভাবে ফাইল সিস্টেম কোনও ফাইলের নাম শারীরিক হার্ড ড্রাইভে একটি নির্দিষ্ট স্থানে ম্যাপ করে। সুতরাং, হার্ড লিঙ্কগুলি এমন ফাইলগুলি যা তাদের টার্গেটের মতো একই ইনোডকে নির্দেশ করে । এটি লাগানোর আর একটি উপায় হ'ল সমস্ত ফাইলই আসলে তাদের লিঙ্কগুলিকে নির্দেশ করে এমন হার্ড লিঙ্ক। একটি ফাইলের সাথে একটি হার্ড লিঙ্ক তৈরি করা কেবল ফাইল সিস্টেমে একটি নতুন পয়েন্টার (ফাইল) তৈরি করে যা একই ইনোডকে নির্দেশ করে। প্রতিটি ইনোডে একাধিক ফাইল এতে বা একটিকে নির্দেশ করতে পারে, বা কোনওটিই নয়।

এটি আরও স্পষ্টভাবে বুঝতে, ls -iকোনও ফাইলের সাথে যুক্ত ইনড দেখায় এমনটি ব্যবহার করুন। আসুন একটি নরম লিঙ্ক এবং একটি হার্ড লিঙ্ক তৈরি করুন এবং দেখুন কী ঘটে:

ln -s foo SoftLinkToFoo
ln foo HardLinkToFoo

এখন, তাদের ইনোডগুলি পরীক্ষা করুন:

এখানে চিত্র বর্ণনা লিখুন

আপনি উপরের হিসাবে দেখতে পাচ্ছেন fooএবং HardLinkToFooউভয়টিরই একই ইনোড রয়েছে (16648029) যখন সফ্টলিঙ্কটোফুর একটি আলাদা (16648036) রয়েছে।

যদি আমরা নামান্তর কি হবে fooসঙ্গে mv foo bar?

এখানে চিত্র বর্ণনা লিখুন

লাল রঙ একটি ভাঙা নরম লিঙ্কটি নির্দেশ করে, যার টার্গেটটি আর খুঁজে পাওয়া যাবে না। এটি কারণ নরম লিঙ্কগুলি কোনও ফাইলের নামের দিকে ইন্ডোড নয় point নোট করুন যে নামটি পরিবর্তন করা সত্ত্বেও, ইনোডটি একই থাকে তাই হার্ডলিঙ্কটি ঠিক আছে, এটি এখনও কাজ করে।

সংক্ষেপে, হার্ড লিঙ্কগুলি আসলে একই ফাইলের দুটি প্রকাশ ; তারা ডিস্কের একই বিভাগে নির্দেশক। সফট লিঙ্কগুলি কেবল শর্টকাট। আসল বিশ্বের উপমা নিতে, হার্ডলিঙ্কগুলি একই ফোন লাইনের জন্য দুটি পৃথক ফোন নম্বরগুলির মতো এবং সফট লিঙ্কগুলি একই বাড়িতে দুটি পৃথক ফোন লাইন থাকার মতো having


6
@ কিউই এটির বিপরীত: নিখুঁত প্রতীকগুলি বিভিন্ন উপায়ে ব্যর্থ হয় (আপনি যখনই তথ্য ঘুরিয়ে নেওয়ার সাথে সাথে এটি আলাদা জায়গায় সরিয়ে ফেলবেন, ব্যাক আপ করুন, ...) এবং সর্বোপরি এড়ানো যায়।
গিলস 'অসন্তুষ্ট হওয়া বন্ধ করুন'

3
এটিও লক্ষণীয় যে হার্ড লিঙ্কটি মুছে ফেলা ( rmবা মাধ্যমে unlink()) কেবলমাত্র লিঙ্কের গণনা হ্রাস করে যতক্ষণ না লিঙ্কের গণনা শূন্যে পৌঁছে যায়, যখন ফাইলের সামগ্রী দ্বারা দখলকৃত ব্লকগুলি প্রকাশ না হয়। আমি নিশ্চিত নই যে "হার্ড লিঙ্কগুলি একই ফাইলের দুটি উদাহরণ" কঠোরভাবে সঠিক, যেহেতু দুটি নাম একই ইনোডের দিকে ইঙ্গিত করে, এবং এইভাবে একই বিষয়বস্তু, বরং ফাইলটির নিজস্ব দুটি উদাহরণ থাকার চেয়ে কোন অনুভূতি.
এমমেট

7
মনে রাখবেন একটি উইন্ডোজ শর্টকাট শেল দ্বারা ব্যবহৃত একটি ফাইল এবং এটি শেল সম্পর্কে জানার মতো জিনিসগুলি করতে পারে তবে ফাইল সিস্টেম নয়। যেমন আপনি শেল নেমস্পেসে শর্টকাট তৈরি করতে পারেন (উদাঃ কন্ট্রোল প্যানেল, কম্পিউটার ইত্যাদি), বা আপনি ইনস্টল হওয়া অ্যাপ্লিকেশনগুলিতে শর্টকাট তৈরি করতে পারেন (যা প্রথম ব্যবহারে ইনস্টল করা হবে)। ফাইল সিস্টেমের জগতে এই জিনিসগুলির কোনও সরাসরি সমতুল্য নেই।
জোয়

2
আমি এই উত্তরটি পছন্দ করি তবে উইন্ডোজ শর্টকাট কী তা বোঝার পক্ষে এটি আসলে বেশ দুর্বল। উইন্ডোজ শর্টকাট একটি সিমলিংকের চেয়ে লিনাক্স .ডেস্কটপ ফাইলের মতো হওয়ায় নীচের @ শকুন্তলা একটি ভাল প্রতিক্রিয়া পেয়েছে।
মাইকেববকক

18

নরম এবং শক্ত লিঙ্কগুলি কী তা সম্পর্কে একটি ভাল ব্যাখ্যা রয়েছে তবে একটি বিষয় পরিষ্কার করা দরকার।

উইন্ডোজ শর্টকাট সমতুল্য বা একই রকম তন্ন তন্ন নরম লিঙ্ক কিংবা হার্ড সংযোগগুলি । ফাইল সিস্টেম স্তরে এগুলি কেবল ফাইল। এটি শেল যা তাদের গঠন বোঝে এবং লিঙ্ক হিসাবে তাদের ব্যাখ্যা করে। উইন্ডোজ শর্টকাটগুলি শেল নেমস্পেসের বস্তুগুলিতেও নির্দেশ করতে পারে যা ফাইল সিস্টেমের সাথে সম্পর্কিত নয় (প্রিন্টার, নিয়ন্ত্রণ প্যানেল আইটেমগুলি, ভার্চুয়াল ফোল্ডার)।

উইন্ডোজ শর্টকাটগুলি ফাইল সিস্টেমের সামগ্রীর নাম ছাড়াও নিম্নলিখিত তথ্যগুলি অন্তর্ভুক্ত করে: পিআইডিএল (শেল নেমস্পেসের মধ্যে অস্বচ্ছ বাইনারি "পাথ"), বিবরণ, হটকি, আইকন, ওয়ার্কিং ডিরেক্টরি। উইন্ডোজ এনটিএফএস ফাইল সিস্টেমটি যদি ভাঙা শর্টকাটগুলি ঠিক করতে ব্যবহৃত হয় তবে এনটিএফএস অবজেক্ট শনাক্তকারীও যুক্ত করে।

উইন্ডোজ শর্টকাটের মোটামুটি সমান একটি .ডেস্কটপ ফাইল। এই প্রশ্নটি সুপার ইউজারে দেখুন: লিনাক্সে .lnk এর সমতুল্য কি আছে?


6

লিনাক্সে জিনিসগুলি ভিন্নভাবে কাজ করে।

প্রতিটি ফাইলকে 'ইনোড' নামক একটি অবজেক্ট দ্বারা প্রতিনিধিত্ব করা হয়। প্রতিটি ইনোড এর সাথে যুক্ত একটি নম্বর (আইডি) থাকে।

যেমনটি আমরা জানি মানুষ সংখ্যা মনে রাখার চেয়ে ভাল নয়। (এভাবেই ফোনবুকগুলি বিকশিত হয়েছে)

সুতরাং, ফাইলের নামটি প্রতিটি ইনোডকে একটি মানব পাঠযোগ্য নাম দেওয়ার জন্য ছবিতে আসে into মূলত, একটি হার্ডলিঙ্ক একটি ইনোডের সাথে একটি ফাইলের নাম আবদ্ধ করে। একটি ইনোডে একাধিক হার্ডলিঙ্ক থাকতে পারে। যদি কোনও নির্দিষ্ট ইনোডের জন্য কোনও হার্ডলিঙ্ক উপস্থিত না থাকে তবে ইনোড দ্বারা ব্যবহৃত ডিস্কের স্থানটি নতুন ফাইলগুলির জন্য পুনরায় বরাদ্দ করা যেতে পারে। যার অর্থ, প্রতিটি ফাইলের জন্য কমপক্ষে একটি হার্ডলিংক উপস্থিত থাকতে হবে। ফাইলের নাম (ফাইল ব্রাউজারে ফাইলের নাম / আইকন হিসাবে দৃশ্যমান) নিজেই একটি হার্ডলিঙ্ক।

উইন্ডোজে শর্টকাট একটি পৃথক ফাইল (* .lnk ফাইল)। এটিতে মূল ফাইল (বোধগম্যভাবে ফাইলের পাথ) সম্পর্কিত তথ্য রয়েছে। লিনাক্স উপলব্ধিতে উইন্ডোজ শর্টকাট হ'ল '.lnk' দিয়ে শেষ হওয়া কোনও ফাইলের নামের সাথে যুক্ত করা অন্য আইওনড।


3
এনটিএফএস আসলে এটির মতো খুব বেশি কাজ করে। একটি ফাইল এমএফটি-তে একটি এন্ট্রি এবং ডিরেক্টরি এন্ট্রিগুলি কেবল ফাইল আইডি ফাইলের ম্যাপ করে। এটি হার্ডলিঙ্কগুলি এবং ২০০৮ / 7 / ভিস্তা (?), এমনকি সিমলিংকগুলি সমর্থন করে। এই মুহুর্তে, বৃহত্তম পার্থক্য হ'ল সাংস্কৃতিক।
সিএওও

2

উইন্ডোজে আপনি হার্ডলিঙ্কগুলিও তৈরি করতে পারেন যদি আপনার এনটিএফএস ফাইল সিস্টেম থাকে।

fsutil hardlink create target_file source_file

ফাইলগুলি একই লজিক্যাল ড্রাইভে থাকতে হবে।


এটি সঠিক - এনটিএফএস হার্ডলিঙ্কগুলিও সমর্থন করে। সরঞ্জামগুলি তৈরি করার জন্য প্রায়শই আপনার অ্যাডমিন বিশেষাধিকার থাকা প্রয়োজন require "একই লজিক্যাল ড্রাইভ" সম্পর্কে - এটি বলা আরও সুস্পষ্ট হবে, তাদের একই ফাইল সিস্টেমে থাকা দরকার। একটি লজিক্যাল ড্রাইভ কিছু হতে পারে, দ্বারা নির্মিত একটি ড্রাইভ লেটার সহ substকমান্ড। কোনও সরঞ্জাম সম্ভবত এটির জন্য / জানেন না এবং এইভাবে একটি হার্ডলিঙ্ক তৈরি করতে অস্বীকার করবে । খুব দরকারী জিনিস হ'ল লিংক শেল এক্সটেনশন যা এক্সপ্লোরারকে তাদের তৈরি করতে সক্ষম করে।
টোবিয়াস

1

বড় পার্থক্য, হার্ড-লিঙ্ক ফোল্ডারগুলির জন্য তৈরি করা যায় না, তবে ফাইলগুলির জন্য।

শর্টকাট ফোল্ডারগুলির জন্য তৈরি করা যেতে পারে, সুতরাং আপনি সেগুলি সমতুল্য বলতে পারবেন না।

আপনার প্রশ্নটি প্রতীকী লিঙ্ক বা নরম লিঙ্ক এবং শর্টকাটের মধ্যে পার্থক্য হওয়া উচিত ।

এটি অনুসারে:

একটি প্রতীকী লিঙ্কটি ফাইল সিস্টেম স্তর এবং সমস্ত কিছুই এটিকে আসল ফাইল হিসাবে দেখায়। প্রতীকী লিঙ্কটি ব্যবহার করতে কোনও অ্যাপ্লিকেশনটির কোনও বিশেষ সহায়তার প্রয়োজন নেই।

একটি "শর্টকাট" কেবলমাত্র একটি নিয়মিত ফাইল যা গন্তব্য ফাইল বা ডিরেক্টরিতে উল্লেখ রয়েছে।

সুতরাং যখন আপনি একটি শর্টকাট ক্লিক করবেন তখন আপনার ডিরেক্টরিটি আসল ফাইলে বদলে যাবে, যখন সফট-লিংকটি তার অবস্থানটিকে আসল ফাইলের মতো দেখিয়ে দেবে, লিনাক্সের জন্য আপনি শর্টকাটে সিডি করতে না পারার সময় টার্মিনাল এবং সিডি প্রতীকী লিঙ্কগুলিতে ব্যবহার করতে পারবেন ।

একটি উইন্ডোজ শর্টকাট এবং একটি লিনাক্স লঞ্চার (কিছু লোকের দিকে নির্দেশ করা) অভিন্ন হবে।


2
কি? সফটলিঙ্কগুলি কেবল ফাইল, অদ্ভুত হলেও, তারা উদাহরণস্বরূপ ইনোডও নেয়। তাদের মূল হিসাবে বিবেচনা করা হয় না (এটি হার্ডলিঙ্কগুলি)। যদিও এটি সত্য যে হার্ডলিংকগুলি বেশিরভাগ ওএসে ডিরেক্টরিগুলির জন্য অনুমোদিত নয়, এটি কেবল একটি সুরক্ষা বৈশিষ্ট্য এবং এর ব্যতিক্রমগুলি রয়েছে (উদাহরণস্বরূপ ওএসএক্স টাইম মেশিন)। এবং অবশ্যই আপনি শর্টকাটগুলিতে সিডি করতে পারবেন (আমি ধরে নিই যে আপনি উইন্ডোজ শর্টকাট বলতে চাইছেন যেহেতু আপনি বলেছেন যে আপনি সিডিতে সফটলিঙ্ক করতে পারেন)।
টেরডন

1
আপনি কি নিশ্চিত যে আপনি শর্টকাটে সিডি করতে সিএমডি ব্যবহার করতে পারেন।
nux

1
আমি সবেমাত্র আমার উইন্ডোজ ভিএম আপ করে দিয়েছি এবং আমার ডেস্কটপের একটি ফোল্ডারে শর্টকাট তৈরি করেছি, উইন্ডোজ শর্টকাটগুলি সিমলিংকের সাথে খুব মিল (যদি অভিন্ন না হয়)। আপনি কোনও কারণে cmd.exe ব্যবহার করে তাদের সিডি করতে পারবেন না, আপনি কোনও ডিরেক্টরিতে একটি .lnk তৈরি করতে পারেন এবং এটি এক্সপ্লোরারের মাধ্যমে ব্যবহার করতে পারেন।
টেরডন

1
নিচে ভোটারদের ডাউনভোটিংয়ের একটি কারণ দেওয়া উচিত
nux

5
দুঃখিত, এখনও সঠিক নয়। সিমলিংকগুলি হ'ল ফাইলগুলি তাদের লক্ষ্যটিকে প্লেইন পাঠ্য হিসাবে চিহ্নিত করা হয় ( এখানে দেখুন ), সিমলিঙ্কগুলি মূল হিসাবে বিবেচনা করা হয় না , এটি সিমলিংক এবং হার্ডলিঙ্কগুলির মধ্যে পুরো পার্থক্য। লিনাক্স প্রবর্তক (আমি ধরে নিলাম আপনার অর্থ। ডেস্কটপ ফাইলগুলি) এর সাথে মোটেই কিছুই করার নেই, এগুলি সম্পূর্ণ আলাদা। আপনি যেমনটি বলেছেন, উইন্ডোজ শর্টকাটগুলি ফাইলগুলি (প্রোগ্রামগুলি সহ) এবং ফোল্ডারগুলিতে নির্দেশ করতে পারে (ম্যাক এবং উইন্ডোগুলির ফোল্ডার রয়েছে, লিনাক্সের ডিরেক্টরি রয়েছে) .ডেস্কটপ ফাইলগুলি আপনাকে কেবল একটি প্রোগ্রাম চালু করতে দেয়। তারা কোথাও লিঙ্ক দেয় না।
টেরডন
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.