পুশড / পপড একটি সাধারণ ধারণা যা আমাকে বুঝতে কিছুটা সময় নিয়েছিল কারণ লোকেরা এই আদেশগুলি 'কমান্ড ডিরেক্টরী স্ট্যাককে ম্যানিপুলেট করে' যেটি আমার মতে বিভ্রান্তিকর করে এই আদেশগুলি সংজ্ঞায়িত করে শেখানোর প্রবণতা বোধ করে।
আমি এটিকে অন্যভাবে দেখি:
পুশড [ফোল্ডার_নাম] - সিডি করবে [ফোল্ডার_নাম] এবং গন্তব্যটি যা ডায়ার স্ট্যাকের মধ্যে [ফোল্ডার_নাম] নথিভুক্ত করবে যখন স্ট্যাকের শীর্ষস্থানীয় ডিরেক্টরিটি সর্বদা আপনার বর্তমান দির থাকবে
পপড - প্রথমে আপনাকে স্টোরের শীর্ষে থাকা ডিরেক্টরি রেকর্ডে সিডি করবে এবং তারপরে স্ট্যাক থেকে সরিয়ে ফেলবে
ডায়ার্স - দির স্ট্যাকটি মুদ্রণ করবে (বাম দিকের প্রবেশদ্বারটি বর্তমান ডিরেক্টরি (স্ট্যাকের শীর্ষস্থানীয়) যেখানে ডিয়ার ডিবি হিসাবে বিবেচিত হবে
সুতরাং 2 সবচেয়ে জনপ্রিয় ব্যবহারের কেস হ'ল:
কেস 1 ব্যবহার করুন: পুশড এবং পপড ব্যবহার করে নেভিগেট করা
root@mypc:/main/$ ls
dir1 dir2 dir3 dir4
root@mypc:/main/$ dirs # prints the current stack
/main
root@mypc:/main/$ pushd dir1 # Will cd to dir1 and document dir1 in dir stack, stack is now:
/main/dir1 /main
root@mypc:/main/dir1$ # I am now in /main/dir1
root@mypc:/main/dir1$ # Now let's go wild and document whatever I want
root@mypc:/main/dir1$ pushd ../dir2
root@mypc:/main/dir2$ # Woo I am in /main/dir2
root@mypc:/main/dir2$ pushd ../dir3
root@mypc:/main/dir3$ # Woo I am in /main/dir3
root@mypc:/main/dir3$ pushd ../dir4
root@mypc:/main/dir4$ # Woo I am in /main/dir4
root@mypc:/main/dir4$ dirs # Now dir stack is:
/main/dir4 /main/dir3 /main/dir2 /main/dir1 /main
আসুন বলি যে আমি উপরেরটি করেছি যেহেতু আমি যে নথিগুলি নথিভুক্ত করেছি সেই ফোল্ডারে ফিরে যেতে চাই!
মনে রাখবেন যে আমি নিজে সিডি করলে আমি উপরের দির স্ট্যাক প্রবেশকে প্রভাবিত করব (যা সর্বদা বর্তমান দির)
root@mypc:/main/dir4$ cd .. # Now dir stack is:
# (note that /main appear in the leftmost as well which is the top of the stack)
/main /main/dir3 /main/dir2 /main/dir1 /main
root@mypc:/main$
এখনই পিছন দিকে নেভিগেট করা যাক:
root@mypc:/main$ popd
root@mypc:/main$ # Still in /main since it was at the top of the dir stack
root@mypc:/main$ dirs # Stack is now:
/main/dir3 /main/dir2 /main/dir1 /main
root@mypc:/main$ popd
root@mypc:/main/dir3$ popd # Woo in dir3 now, about to navigate to dir2
root@mypc:/main/dir2$ popd # Woo in dir2, about to navigate to dir1
root@mypc:/main/dir1$ dirs # Stack is now:
/main
আমি যে যা ডায়ার চাইছি তা আবার নথিভুক্ত করতে পারি এবং তারপরে ম্যানুয়ালি অন্য দিরে নেভিগেট করতে পারি তবে আমি স্ট্যাকের ভিতরে sertedোকানো নথিভুক্ত দিরটিতে সহজেই ফিরে আসতে সক্ষম হব।
কেস 2 ব্যবহার করুন: সংখ্যার স্ট্যাক সূচক ব্যবহার করে নেভিগেট করা
বলি আমি ধাক্কা dir4 dir3 dir2 dir1 ব্যবহার করে ধাক্কা দিয়েছি, এখন dir -v চলছে তা দেখাবে:
root@mypc:/main$ dirs -v
0 /main/dir1 (this is the current dir you are in always)
1 /main/dir2
2 /main/dir3
3 /main/dir4
এখন আপনি যে কোনও লিনাক্স অপারেশন করতে পারেন যাতে স্ট্যাক সূচকটি ব্যবহার করে ডিরেক্টরি অন্তর্ভুক্ত থাকে:
root@mypc:/main$ cp ~2/temp.txt ~3/new_temp.txt # this will run in the background, something like:
# cp /main/dir2/temp.txt /main/dir3/new_temp.txt
আপনি দির স্ট্যাক থেকে একটি নির্দিষ্ট এন্ট্রি মুছতে পারেন:
root@mypc:/main$ popd ~4
আশা করি যে "ডকুমেন্টিং" শব্দটি ব্যবহার করে বা একটি ধরণের ডিবি ধারণাটি সহজ করার সাথে সাথে দির স্ট্যাকের কথা ভাবেন!
cd -
সংক্ষিপ্তকরণের জন্য উপকরণcd ..
ইত্যাদি)।