সিডি করে? ব্যবহার আছে?


102

আমি টিউটোরিয়ালগুলির মধ্যে একটি সংক্ষেপে বলেছি যে cd .এর কোনও ব্যবহার নেই। সিম্বলিক লিঙ্ক পুনরাবৃত্তিতে ওপি দ্বারা প্রদর্শিত ইস্যুটির প্রতিলিপি দেওয়ার চেষ্টা করার সময় - এটি কী "পুনরায় সেট" করে? , আমি চেষ্টাও করেছি cd ., যা ওপি বর্ণিত একই প্রভাব দেখিয়েছিল (ক্রমবর্ধমান $PWDপরিবর্তনশীল), যার সাথে লড়াই করা যেতে পারে cd -P

এটি আমাকে অবাক করে তোলে, এমন কোনও পরিস্থিতি আছে যেখানে কেউ বাস্তবে ব্যবহার করতে চায় cd . ?


20
আমার একটি কাস্টম .zshrc আছে যা ডিরেক্টরিতে স্যুইচ করার সময় ডিরেক্টরিতে বিভিন্ন চেক পরিচালনা করে, উদাহরণস্বরূপ, চেকগুলির মধ্যে একটি ডিরেক্টরি ডিরেক্টরি সরানোর সময় একটি মিলিয়ে ভার্চুয়ালেনভকে স্বয়ংক্রিয়ভাবে সক্রিয় / নিষ্ক্রিয় করা হয়। মাঝে মাঝে, আমি একটি নতুন শেল বা যা কিছু শুরু করতে পারি এবং সেগুলি চেকগুলি চালায় না এবং আমি সাধারণত cd .এই চেকগুলি ট্রিগার করতে ব্যবহার করি কারণ এটি সংক্ষিপ্ত এবং সহজ। যদিও আমি মনে করি আপনি প্রশ্নটি ভ্যানিলা পরিবেশের জন্য বলেছিলেন।
মিথ্যা রায়ান

29
থেকে কার্যকর (সুস্পষ্ট) এছাড়া $PWD, cd .এছাড়াও পরিবর্তন $OLDPWDবর্তমান ডিরেক্টরির। কেন এটি কার্যকর হতে পারে তা আমার এখনই ধারণা নেই, তবে সম্পূর্ণতার জন্য ...
এন্ড্রেস উইজ

5
আমি মনে করি না যে আমার কখনই প্রয়োজন হয়েছিল cd ., যদিও নীচের উত্তরগুলি দেখেছি, ভবিষ্যতে আমি সম্ভবত এটি করতে পারি, তবে পরে pushd .যখন popdএই ডিরেক্টরিতে ফিরে যেতে সক্ষম হতে চাই তখন আমি মাঝে মাঝে ব্যবহার করেছি । যেমন একটি build স্ক্রিপ্ট যে আছে চলমান যখন configure, cd output...এবং make, এবং যখন এটা সম্পন্ন আমি মূল ডিরেক্টরি ফিরে যেতে চাইবেন। আমার নিজের বিল্ডস্ক্রিপ্টের অনুলিপিটি অন্যের প্রত্যাশার চেয়ে আলাদা রাখার পরিবর্তে, আমি কেবল এটি চালিত করি pushd .; ./BuildScriptName.sh; popdএবং এটি আমাকে popdমাঝে মাঝে না এবং popdপরে পরিবর্তে স্বাধীনতা দেয় ।
3D1T0R

5
অবশ্যই তা উল্লেখ করার দরকার নেই '।' এবং '..' সিডি কমান্ডেই প্রয়োগ করা হয় না, সুতরাং কেউই সেই নির্দিষ্ট বৈশিষ্ট্যটি তৈরি করতে প্রস্তুত হয় না, এটি কেবল এমন কিছু সংমিশ্রণ যা কোনও বাস্তব উদ্দেশ্য করে না ser
ডেভিড এস

1
@রুখ না, বাহ্যিক প্রোগ্রামগুলি শেল প্রয়োগের পরিবেশকে প্রভাবিত করবে না। এটি বেশিরভাগই পসিক্স কমপ্লায়েন্সের জন্য যার শেলের বাইরে কিছু ইউটিলিটি থাকা এবং বাহ্যিক আদেশের প্রস্থান স্থিতির মূল্যায়ন প্রয়োজন। আপনি উদ্দেশ্য সম্পর্কে পড়তে পারেন /bin/cdএখানে unix.stackexchange.com/q/50058/85039
Sergiy Kolodyazhnyy

উত্তর:


158

আমি মনে করি এটি সমস্যাটিকে উড়িয়ে দিচ্ছে। cd .জিনিসগুলির সাধারণ পাঠ্যক্রমে ম্যানুয়ালি চলতে পারে এমন কিছু নাও হতে পারে তবে এটি অবশ্যই প্রোগ্রামাইজিক এক্সিকিউশনে আসতে পারে (এমন কোনও পরিস্থিতির কথা চিন্তা করুন যেখানে আপনি cdকোনও ফাইল ধারণকারী ডিরেক্টরিতে থাকতে পারেন, যার পথ ব্যবহারকারী দ্বারা সরবরাহ করা হয়েছে )। অতএব, এর কিছু নির্দিষ্ট ব্যবহার থাকতে হবে না: যতক্ষণ না এটি এর সাধারণ শব্দার্থকে পরিপূর্ণ করে, ততক্ষণ cd <some-path>এটি কার্যকর।


12
সম্মত, সিনট্যাক্স .দ্বারা cdঠিক সূক্ষ্ম দ্বারা নির্দিষ্ট বৈধ পথ হিসাবে বিবেচনা করা উচিত ।
সের্গেই কলডিয়াজন্য

18
আপনি নিম্নলিখিত উদাহরণটি যুক্ত করতে পারেন: লুপগুলি যখন পছন্দ করে IFS= read Dir; do cd "$Dir"; do_something; done < <(find . -type d)। তার কোর্সের সময়, .পথ হিসাবে উত্পাদিত করুন , যাতে আদেশটি cd "$Dir"প্রসারিত হয় cd .। সুতরাং, স্ক্রিপ্টগুলিতে এটি পুরোপুরি কার্যকর।
রেক্সকোগিটানস

5
উদাহরণস্বরূপ, একটি স্ক্রিপ্ট আসলে চালিত হয় cd ${path_to_directory}তবে কোনও এক সময় এটি ডিরেক্টরিটি বর্তমান ডিরেক্টরি হয় এবং path_to_directory = .তাই আপনাকে cd .কেবল ক্ষেত্রে কাজ করতে হবে ।
ডেমিস

4
অন্য কথায়, এর ইউটিলিটিটি হ'ল এটি অতিরিক্ত কোড ( ifচেক এবং elseক্লজগুলি, যে কোনও ধরণের বিশেষ কেসিং) অপ্রয়োজনীয় করে তোলে।
jpmc26

2
সুতরাং এটি এই অর্থে কার্যকর যে x + 0 বা x * 1 টি দরকারী - নির্দিষ্ট ক্রিয়াকলাপটি প্রতি সেটের জন্য কার্যকর নয় তবে এর অর্থ হল আপনি 0 এবং 1 কে অন্য মান হিসাবে একইভাবে পরিচালনা করতে পারবেন, এগুলি বিনা আচরণে ছাড়াই একটি বিশেষ ক্ষেত্রে।
user32929

127

শেষ কমান্ডটি কার্যকর হওয়ার পর থেকে ডিরেক্টরিটির পথ পরিবর্তন হতে পারে এবং cd .ব্যাশ এবং ksh93 শেলগুলি প্রশ্নযুক্ত লিঙ্কযুক্ত পোস্টে বর্ণিত লজিক্যাল ওয়ার্কিং ডিরেক্টরিতে নির্ভর করবে, সুতরাং cd .যে শেল ইস্যুটি তৈরি করা হয়েছে তা getcwd()সিস্কাল আপনার নিশ্চিত করবে বর্তমান পথ এখনও বৈধ।

বাশে পুনরুত্পাদন করার পদক্ষেপ:

  1. একটি টার্মিনাল ট্যাব ইস্যুতে mkdir ./dir_no_1; cd ./dir_no_1
  2. একটি ভিন্ন টার্মিনাল ট্যাব ইস্যুতে mv dir_no_1 dir_no_2
  3. প্রথম টার্মিনাল ট্যাব ইস্যুতে echo $PWDএবং pwd। লক্ষ্য করুন যে ডিরেক্টরিটির বাহ্যিক নামকরণ হয়েছে; শেলের পরিবেশ আপডেট করা হয়নি।
  4. ইস্যু cd .; pwd; echo $PWD। মান আপডেট করা হয়েছে লক্ষ করুন।

ksh93, তবে পরিবেশের তথ্য আপডেট করে না, সুতরাং cd .ksh93 আসলে বাস্তবে অকেজো হতে পারে। ইন /bin/dashউবুন্টু এবং অন্যান্য ডেবিয়ান ভিত্তিক সিস্টেমে, cd .ফেরৎ dash: 3: cd: can't cd to .ত্রুটি, তবে cd -P .(ksh93 মধ্যে অসদৃশ) কাজ করে।


22
জেনে রাখা ভাল: আমি এটি আমার অকেজো তথ্যগুলির তালিকায় যুক্ত করব। ^^)
jayooin

12
); ভাল লাগছে @jayooin আমি তালিকায় ভূমিকা রাখতে পারে সে
Sergiy Kolodyazhnyy

8
আমার মনে হয় আপনি কি করতে পারেন mv ../dir_no_1 ../dir_no_2মধ্যে একই টার্মিনাল / ব্যাশ।
ctrl-alt-delor

3
@ Ctrl-Alt-delor নিশ্চিত হয়েছে, কাজ করে :)
Sergiy Kolodyazhnyy

1
@ এম্বিটার্ট বেশিরভাগ শেলগুলিতে pwdআসলে একটি অন্তর্নির্মিত হয় তবে /bin/pwdশেল এর পরিবেশের উপর আহবান করার কোনও প্রভাব নেই - সাধারণভাবে বাহ্যিক ইউটিলিটিগুলি শেল পরিবেশকে প্রভাবিত করে না। কেন /bin/cdএবং /bin/pwdঅস্তিত্বের কারণ হ'ল অন্যান্য জিনিসগুলির মধ্যে পসিক্স কনফারেন্সের জন্য। একটা ব্যাপার বহিরাগত সিডি সম্পর্কে ভাল আলোচনা যা কিছু সম্ভবত প্রযোজ্য /bin/pwdহিসাবে ভাল
Sergiy Kolodyazhnyy

55

cd .আপনি যে ডিরেক্টরিটিতে রয়েছেন সেটি মুছে ফেলা হয়েছে এবং তারপরে আবার তৈরি করা হবে এর আর একটি ব্যবহারের ক্ষেত্রে হবে। নিম্নলিখিত চেষ্টা বিবেচনা করুন -

  1. একটি ডিরেক্টরি তৈরি করুন temp
  2. cd temp এবং তারপর একটি করতে ls
  3. অন্য একটি টার্মিনাল খুলুন এবং মুছুন এবং তারপরে ডিরেক্টরিটি পুনরায় তৈরি করুন temp
  4. প্রথম টার্মিনাল থেকে ফিরে, একটি এলএস করার চেষ্টা করুন। এটির ফলে একটি ত্রুটি ঘটবে -ls: cannot open directory .: Stale file handle
  5. cd . এবং তারপরে একটি এলএস করা ভাল কাজ করে

3
এটি সবসময় কাজ করে না। ড্যাশে, উদাহরণস্বরূপ, আপনি পাবেন: cd: can't cd to .এখন আমি এটির দিকে নজর দিই, সের্গির উত্তরে এটি ইতিমধ্যে উল্লেখ করা হয়েছে (চলন্ত, মোছা / পুনরুদ্ধার করা - মূলত একই: আপনি যে ডিরেক্টরিটিতে রয়েছেন সেটি আর মূল সংস্করণে নেই পাথ)
ওলরিন

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

2
আমি cd .সমস্ত সময় ব্যবহার করি যখন আমার একটি শেল থাকে যার বর্তমান ওয়ার্কিং ডিরেক্টরিটি এসএসএফএস দিয়ে মাউন্ট করা হয়েছিল তবে এসএসসি সেশনটি বন্ধ হয়ে আবার খোলা হয়েছে।
জেমসডলিন

4
এমন ক্ষেত্রে আমি "সিডি $ পিডাব্লুডি" করি। অন্যান্য রূপগুলি কাজ করতে পারে তবে এটি একটি স্পষ্টভাবে অভিপ্রায়টি প্রকাশ করে: আমার বর্তমান পথটি (যেমন PWDপরিবেশের ভেরিয়েবলের বিষয়বস্তু পড়ুন ) বলে মনে করা হয় তা বের করুন , তারপরে ফাইল সিস্টেমের স্তরক্রমকে মূল থেকে ডাইরেক্টরি ধরে হাঁটুন যার মাধ্যমে পৌঁছতে পারে happens সেই পথটি, এটি আসলে একই ডিরেক্টরি হোক বা না হোক। এই উত্তরের ব্যবহারের ক্ষেত্রে এটি ঠিক ফিট করে।
স্টাফেন গ্যারিচন

3
আমি সত্যিই অবাক, এমনকি হতবাক হয়েও cd .কাজ করি যখন ডিরেক্টরিটি লিঙ্কযুক্ত হয়ে যায় এবং একই ফাইল-সিস্টেমের পথে একটি নতুন, ভিন্ন ডিরেক্টরি তৈরি করা হয়। বর্তমানের কর্মনির্দেশক ডিরেক্টরিটি লিঙ্কযুক্ত এবং সম্ভবত এটির অংশ হিসাবে সম্ভবত এটির আর প্রবেশ .বা ..প্রবেশ নেই এবং এমনকি এটি থাকলেও .এন্ট্রিটি নিজের দিকে নির্দেশ করা উচিত। দেখে মনে হচ্ছে শেল বা কার্নেল ডিরেক্টরি প্রবেশাধিকারের পরিবর্তে ডিরেক্টরি প্রবেশের পরিবর্তে সিডি কমান্ডটি চালাচ্ছে যা কেবল প্রবেশ .প্রবেশের পরিবর্তে । কেউ কি এই আচরণটি নিশ্চিত করতে পারবেন?
অ্যাড্রিয়ান প্রানক

36

আপনি $OLDPWDদ্রুততার সাথে সাফ করতে পারেন cd ., যদি এমন কোনও ঘটনা ঘটে থাকে যেখানে আপনি এটি "আকর্ষণীয়" কোথাও নির্দেশ করতে চান না। এটি প্রভাবিত করবে cd -


16

প্রোগ্রামগতভাবে এটি কোনও অপ-বিকল্প হিসাবে কার্যকর। বাহ্যিক ইনপুট থেকে সরবরাহিত একটি পথ বিবেচনা করুন।

read -p "Path to file: " p
dirn=$(dirname "$p")
file=$(basename "$p")
echo "dirn=$dirn, file=$file"
cd "$dirn"
ls -ld "$file"

"Fred.txt" এর মতো কোনও পথের সাহায্যে ডিরেক্টরিটি হয়ে উঠবে ., যার ফলেcd .


1
এটি দরকারী যে আপনি যে ডিরেক্টরিতে নেভিগেট করছেন তার মধ্যে যদি আপনি ইতিমধ্যে থাকেন তবে এটি কোনও ত্রুটি ছুঁড়ে না ফেলে তবে আমি এটি বলব না যে এটি কোনও অপ-বিকল্প হিসাবে কার্যকর।
ক্যাপ্টেন ম্যান

2
@ ক্যাপটেনম্যান যদি আপনি ইতিমধ্যে ডিরেক্টরিতে রয়েছেন তবে কোনও ত্রুটি ছুঁড়ছেন না (কার্যকরভাবে) একটি অপ-অপশন। dirnameকমান্ড উত্পন্ন .যেখানে প্রয়োজন অবিচ্ছিন্ন কোডটি একটি পাথ বিভক্ত পাবে আশা এড়ানো।
রোয়াইমা

15

আপনার যদি কোনও খারাপ ইউএসবি কেবল ব্যবহার করে কাজ করতে হয় তবে এটি সাধারণ। কোনও ডিভাইস সংযোগ বিচ্ছিন্ন হয়ে আবার সংযুক্ত হওয়ার পরে এবং একই ডিরেক্টরিতে স্বয়ংক্রিয়ভাবে যুক্ত হওয়ার পরে, আপনাকে cd .এটি আবার কাজ করতে ব্যবহার করতে হবে।


1
এটি কী ধরণের ডিভাইসের উপর নির্ভর করবে না, কীভাবে এটি অ্যাক্সেস হচ্ছে, এর ফাইল সিস্টেম, ওএস এবং সি?
গিডস

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

11

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

সুতরাং যে কোনও কমান্ড যে কোনও ডিরেক্টরির নাম স্বীকার করে তার জন্য . অবশ্যই একটি যুক্তিযুক্ত যুক্তি হতে হবে এবং মানক শেলটিতে cd .অবশ্যই একটি বৈধ কমান্ড হওয়া উচিত।

cd .দরকারী কিনা তা শেল বাস্তবায়নের উপর নির্ভর করে। উল্লিখিত হিসাবে এটি কার্যকর হতে পারে যদি শেলটি অন্তর্নিহিত chdirসিস্টেম কল করার পরে বর্তমান কার্যনির্বাহী ডিরেক্টরিটির পুরো পথের নামটির অভ্যন্তরীণ ধারণাটি পুনরায় সেট করে , উদাহরণস্বরূপ বলুন যে অন্তর্নিহিত ডিরেক্টরিটি (বা এর কিছু পিতামাতার) নামকরণ করা হয়েছে।

অন্তত কিছু শাঁস আমি জানি (এ /bin/shFreeBSD 'র এবং NetBSD বা দিকে) রূপান্তর করবে cd ""মধ্যে cd .তর্কসাপেক্ষে একটি শেল স্ক্রিপ্ট যেখানে একটি পরিবর্তনশীল অর্থাত মধ্যে একটি খালি পরিবর্তনশীল প্রতিকল্পন রূপান্তর একটি প্যারামিটার হিসেবে ব্যবহার করা যেতে পারে (এ কর্মসূচি ব্যবহার সমর্থন কোনো বৈশিষ্ট্যের বর্ণনা করা যায় যা, একটি " কিছুই না "ফলাফল), যদিও ফ্রিবিএসডি অঙ্গীকারের ইতিহাস বলে যে পরিবর্তনটি সরাসরি ব্যর্থতা রোধ করতে পসিক্স সমর্থন যোগ করার কারণে হয়েছিল chdir(""), যা পসিক্স ম্যান্ডেটগুলি ব্যর্থ হতে হবে।

কিছু অন্যান্য শেলগুলি .তাদের বর্তমান কার্যনির্বাহী ডিরেক্টরিতে পুরোপুরি যোগ্য প্যাথনাম হিসাবে যা সঞ্চয় করেছে তার সাথে এটি প্রতিস্থাপন করবে এবং এইভাবে তাদের জন্য এটি সাহিল আগরওয়ালের উত্তরে বর্ণিত আচরণের অনুমতি দিতে পারে


4

আমি আজই এই কমান্ডটি ব্যবহার করেছি যখন আমি গিটে যে শাখাটিতে কাজ করছিলাম সেটিকে পুনরায় প্রত্যাখ্যান করেছি, সেই ডিরেক্টরিতে যা প্রথম সেই একই শাখায় প্রথম তৈরি হয়েছিল within রিবেসটি ঠিকঠাক হয়ে গেছে তবে পরে git statusত্রুটি ছুঁড়েছে। cd .সব পরে স্বাভাবিক ছিল।

(আমি ঘটনাক্রমে উইন্ডোজে মোবাএক্সটার্মে কাজ করছিলাম। ঠিক যদি আপনি এটি পুনরুত্পাদন করার চেষ্টা করছেন। অন্য সিস্টেমে এটি নাও হতে পারে))


আমি এই কমান্ডটি ডিরেক্টরিগুলিতেও ব্যবহার করেছি যা একটি স্বয়ংক্রিয় প্রক্রিয়া দ্বারা সতেজ হয় যা পুরাতন ডিরেক্টরিকে সরিয়ে নিয়ে যায় এবং এটি একটি নতুন দিয়ে প্রতিস্থাপন করে (সুতরাং এটি যতটা সম্ভব পারমাণবিকের কাছাকাছি)। একটি সাধারণ পরিস্থিতি নয় তবে cd .যা প্রয়োজন তা ঠিক।


স্টিফেন চেজেলাসের এই দুর্দান্ত উত্তরটি পড়ার পরে:

আমি এখন বুঝতে পেরেছি যে আমার ব্যবহারের উপরের মামলাগুলি কেবলমাত্র কাজ করে কারণ আমি ব্যবহার করছি bashযা cd .সমান cd "$PWD"। আমি লিঙ্কিত উত্তরটি পড়ার জন্য অত্যন্ত পরামর্শ দিচ্ছি।


1

আমি কোনও ফাংশনের মাধ্যমে cd .যে জিনিস cdদিয়ে ওভারলোড করেছি তা পুনরায় চালিত করতে ব্যবহার করি bash

আমার থেকে ~/.bashrc:

# from the "xttitle(1)" man page - put info in window title
update_title()
{
    [[ $TERM = xterm ]] || [[ $TERM = xterm-color ]]  && xttitle "[$$] ${USER}@${HOSTNAME}:$PWD"
}

cd()
{
    [[ -z "$*" ]] && builtin cd $HOME
    [[ -n "$*" ]] && builtin cd "$*"
    update_title
}

0

সম্পাদনা: ইতোমধ্যে সাহিল এর আগেও পরামর্শ দিয়েছিলেন ।

আপনি যদি এমন কোনও ফোল্ডারের ভিতরে থাকেন যা অন্য প্রক্রিয়া দ্বারা মুছে ফেলা এবং পুনরায় তৈরি করা হয় তবে এটি কার্যকর। উদাহরণস্বরূপ, দুটি টার্মিনাল সেশন $1এবং $2:

$1 mkdir d
$1 cd d
$1 touch f

$2 rm -rf /path/to/d # delete the folder where $1 is in ...
$2 mkdir /path/to/d # ... and recreate it

$1 touch g # cannot create file g because current dir doesn't exist anymore
touch: cannot touch ‘g’: Stale file handle
$1 cd . # go to the newly created dir (same path)
$1 touch g # works fine now

এই আচরণের মূল কারণটি ঠিক কোথায় (ওএস, শেল, ...?) কিনা তা আমি নিশ্চিত নই।


এটি ইতিমধ্যে অন্যান্য উত্তর দ্বারা উল্লেখ করা হয়েছে।
কুসালানন্দ

-8

না, এর কোনও বুদ্ধি নেই। স্ক্রিপ্টিং-এ নয়, এটি কিছুই করে না।


2
শেলের উপর নির্ভর করে এটি পুনরায় সেট হয়ে যায় $PWDএবং ব্যবহারকারী যদি cdবিল্ট ইন ওভারলোডের জন্য তাদের নিজস্ব ফাংশন বা উপনাম সরবরাহ করে থাকে তবে এটি সম্ভবত অন্যান্য শেল ফাংশনগুলিকে কল করবে cd। এটিও যাচাই করবে যে বর্তমান ডিরেক্টরিটি এখনও বৈধ এবং বর্তমান ব্যবহারের সেখানে থাকার অনুমতি রয়েছে।
কুসালানন্দ

1) অবশ্যই আমরা "সিডি" এর সম্ভাব্য কাস্টম অ্যালিয়াসের কথা বলছি না তবে স্ট্যান্ডার্ড বিল্ড 2) যদি অনুমতি না থাকে তবে সেখানে বর্তমান ব্যবহার কীভাবে হতে পারে? এটিকে সহজ করার জন্য আমি কেবল এটিই বলতে পারি যে বাস্তব বিশ্বে এটি আমার মতে ব্যবহার করার কোনও কারণ নেই।
ফেডারিকো

1
1) আমরা না? 2) বাস্তব বিশ্বের সহজ নয়, এবং ইউনিক্স একটি বহু-ব্যবহারকারী অপারেটিং সিস্টেম। কোনও ডিরেক্টরি ডিরেক্টরিতে অনুমতি পরিবর্তন করতে পারে, এবং যদি স্ক্রিপ্ট, বা অন্য কোনও ব্যবহারকারীর ইন্টারেক্টিভ শেল, তার ডিরেক্টরিটিকে (বা এর একটি উপ-ডিরেক্টরি) তার কার্য ডিরেক্টরি হিসাবে উপস্থিত cd .বলে অভিযোগ করে।
কুসালানন্দ

4
ফেডেরিকো, সাইটের নিয়ম এবং আমার নিজের ব্যক্তিগত নিয়ম অনুসারে আপনার উত্তরটি আমার নীচে নামানো উচিত। তবে, আপনি নতুন। স্বাগত! দয়া করে অন্য কয়েকটি উত্তর পর্যালোচনা করুন । এর পরে, আপনি যদি নিজের উত্তরটি ভুল বলে মনে করেন, দয়া করে এটি মুছুন। দয়া করে এই প্রশ্নের এবং অন্যদের অন্য উত্তরগুলি উপভোগ করুন।
ডেভেলওয়াল

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