ডাবল রুট ফোল্ডার বনাম একক রুট ফোল্ডার


14

আমার লিনাক্স বাক্সে, ব্যাশে, আমার কাছে দুটি ফরোয়ার্ড স্ল্যাশ দ্বারা চিহ্নিত "ডাবল রুট" ফোল্ডারে অ্যাক্সেস রয়েছে:

tomas:~ $ cd /
tomas:/ $ ls
bin/ cdrom@ ...
tomas:/ $ cd //
tomas:// $ ls 
bin/ cdrom@ ...

ফোল্ডার এবং এর সাবফোল্ডারের সামগ্রীগুলি "সাধারণ" একক স্ল্যাশ রুটের সাথে সমান। আমি যখন এর সাবফোল্ডারগুলিতে অ্যাক্সেস করি তখন ডাবল স্ল্যাশ চলে যায় না। বিরক্তিজনকভাবে তিন বা ততোধিক টুকরো টুকরো দিয়ে নিজেকে পুনরাবৃত্তি করে না; এগুলি মূলের সহজ প্রতিশব্দ:

tomas:// $ cd home/tomas
tomas://home/tomas $ cd ///
tomas:/ $ cd ////
tomas:/ $

এটি কোন ধরণের জায়গা? এটা কি বাগ? কেউ কি বার্ষিকী ব্যাখ্যা করতে পারেন?


ভাল প্রশ্ন - আমি একই আচরণ লক্ষ্য করেছি কিন্তু কেন হয় তা কখনই জিজ্ঞাসা করিনি।
লজুয়েট

উত্তর:


18

থেকে ব্যাশ প্রায়শই জিজ্ঞাসিত প্রশ্নাবলী E10 :

E10) 'সিডি //' পিডব্লুডিকে '//' হিসাবে ছেড়ে দেয় কেন?

পিসিক্স ২.২, 'সিডি' এর বর্ণনাতে বলেছে যে বর্তমান কার্যনির্বাহী ডিরেক্টরিটি ক্যানোনিকালাইজ করার সময় তিন বা ততোধিক নেতৃস্থানীয় স্ল্যাশগুলি একক স্ল্যাশ দ্বারা প্রতিস্থাপন করা যেতে পারে।

এটি আমি historicalতিহাসিক সামঞ্জস্যের জন্য অনুমান করি। ইউনিক্সের কয়েকটি সংস্করণ এবং প্রারম্ভিক নেটওয়ার্ক ফাইল সিস্টেমগুলি সার্ভারের 'হোস্টনেম' এ 'পাথ' অ্যাক্সেসের জন্য // হোস্টনাম / পাথের ফর্মের পাথ ব্যবহার করেছে।


1
ডোমেন / ওএস এমন একটি সিস্টেম।
ব্যবহারকারী1686

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

1

"এটি কোনও বাগ নয়, এটি একটি বৈশিষ্ট্য!"

আপনি এখনও একই মূল ডিরেক্টরিতে রয়েছেন। আমি এর উত্স জানি না, তবে সন্দেহ হয় এটির পরম পাথের জন্য স্ট্রিংগুলির সাথে কিছু করার থাকতে পারে। অন্য কেউ যদি নিশ্চিতভাবে জানেন তবে পাইপ আপ করুন।


0

একাধিক স্ল্যাশগুলি আপনি যে সরঞ্জামগুলি ব্যবহার করেছেন সেগুলি কেবল তা উপেক্ষা করা হয় এবং আপনি সর্বদা একই মূল ফোল্ডারে যাচ্ছেন।


তাহলে বাশ কেন / ছাড়ার সময় /// // হিসাবে চলে?
টমাস

0

একাধিক স্ল্যাশকে পথের নাম-সমাধানের উদ্দেশ্যে একক স্ল্যাশ হিসাবে বিবেচনা করা হয়।

আপনি শেল প্রম্পটে যা দেখছেন তা হ'ল ব্যাশ পিএস 1 হ্যান্ডলিংয়ের একটি নমুনা (ব্যাশ ম্যানপেজে বিভাগ "প্রম্পটিং" দেখুন)।

[root@linux /]# cd /    ; echo $PWD
/
[root@linux /]# cd //   ; echo $PWD
//
[root@linux //]# cd /// ; echo $PWD
/
[root@linux /]# cd //// ; echo $PWD
/

ফলাফলটি কেবল উপস্থাপনের বিষয়; আপনি সর্বদা একই মূল ডিরেক্টরিতে রয়েছেন। আপনি এটি পরীক্ষা করে দেখতে পারেন /proc/$$/root

[সম্পাদনা] ভাল আমি এটিকে কখনই জানতাম না: http://www.opengroup.org/onlinepubs/009695399/basedefs/xbd_chap04.html#tag_04_11 "//" এর অর্থ মান দ্বারা অপরিবর্তিত রয়েছে, তবে "///" এবং আরও স্ল্যাশগুলি "/" এর সমতুল্য।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.