পপড / পুশড পাথের স্ট্যাক সরিয়ে বা সাফ করা


39

pushdঅনেক বার ইনগ্রেড করার পরেও আমি পুরো স্ট্যাকগুলি সাফ করতে চাই।

popdস্ট্যাকের সমস্ত আইটেম আমি কীভাবে করব ?

popdস্ট্যাকের মধ্যে কয়টি রয়েছে তা আমার জানা ছাড়াই আমি চাই ?

ব্যাশ ম্যানুয়ালটি এটি কভার করে না বলে মনে হচ্ছে

আমার কেন এটি জানা দরকার? আমি কঠোর এবং স্ট্যাক পরিষ্কার করার জন্য।


1
বিটিডাব্লু, সম্পূর্ণ ব্যাশ ম্যানুয়াল gnu.org এ শেষ। আপনি যদি এক পৃষ্ঠার সমস্ত সংস্করণ ব্যবহার করেন তবে সেখানে স্টাফগুলি পাওয়া সহজ হতে পারে।
jw013

আহ গুগল যে এক সূচক। ধন্যবাদ @ jw013
খ্রিস্টলি

উত্তর:


47

dirs -c আপনি যা খুঁজছেন তা


1
এই করে স্ট্যাকের খালি, কিন্তু আছে না স্ট্যাকের নিচ থেকে কাজ ডিরেক্টরি পুনঃস্থাপন
Eliran Malka

8

উভয় স্ট্যাক খালি করার জন্য এবং স্ট্যাকের নীচে থেকে কার্যকরী ডিরেক্টরি পুনরুদ্ধার করুন:

  • ডিরেক্টরিটি থেকে ডিরেক্টরিটি পুনরুদ্ধার করুন, সেই ডিরেক্টরিতে dirsপরিবর্তন করুন এবং স্ট্যাক সাফ করার চেয়ে:

    cd "$(dirs -l -0)" && dirs -c

    -lবিকল্প এখানে পূর্ণ পাথ তালিকা প্রস্তুত করা যাবে, নিশ্চিত করুন আমরা যদি আমরা চেষ্টা ব্যর্থ না করতে cdমধ্যে ~, এবং -0আহরণ স্ট্যাক নিচ থেকে প্রথম এন্ট্রি।

    @ jw013 পথ বিস্তৃতি এড়িয়ে এই কমান্ডটিকে আরও শক্তিশালী করার পরামর্শ দিয়েছে:

    pushd -0 && dirs -c
  • বা, popdযতক্ষণ না আপনি কোনও ত্রুটির মুখোমুখি হন ( popdডিরেক্টরি স্ট্যাক খালি থাকাকালীন এটি একটি কলের অবস্থা ):

    while (( $? == 0 )); do popd; done

1
প্রথম পদ্ধতিটি আমি যা চেয়েছিলাম ঠিক তেমন। দ্বিতীয়টি আমার ক্ষেত্রে কাজ করবে না যেহেতু আমি pushdকয়েকবার ফোন করেছিলাম , তারপরে মাঝখানে ডিরেক্টরিগুলির একটি মুছে popdফেলেছিলাম, তখন আমি আনারোল করার চেষ্টা করতে গিয়ে ব্যর্থ হচ্ছিলাম। আমি যেদিকে শুরু করেছি সেখানে ফিরে যাওয়ার জন্য মাঝখানে সমস্ত বুগার্ড আপ স্টাফের উপরে ঝাঁপিয়ে পড়তে হবে।
চাক Wilbur

ডান @ চক উইলবার - আপনি যদি ডিরের স্ট্যাকটি ঝেড়ে ফেলেন তবে আপনাকে popdবাঁচাতে পারবেন না :)
এলিরান মালকা

pushd -0পরিবর্তে এটি ভাল cd "$(dirs ...)"
jw013

@ jw013 কিভাবে? এটি দিরের স্ট্যাকের সাথে আরও
গোলমাল করবে

1
cd "$(...)"90%, সম্ভবত 99% ব্যবহারের ক্ষেত্রে কাজ করে তবে pushd -0আপনি আত্মবিশ্বাসের সাথে 100% বলতে পারেন। শেলের মধ্যে ফাইল / ডিরেক্টরি পাথ সম্প্রসারণের সাথে যুক্ত অনেকগুলি সম্ভাব্য গ্যাটাচস এবং এজ প্রসেস রয়েছে যে সর্বাধিক শক্তিশালী কাজটি কেবল এটি সম্পূর্ণরূপে এড়ানো উচিত যা pushd -0খুব সংক্ষিপ্তভাবে করে। আপনি যদি কখনও ঝুঁকি না নেন তবে একটি অদ্ভুত প্রান্তের কেটে একটি বাগ দ্বারা ধরা পড়ার কোনও সম্ভাবনা নেই। আপনি যদি ইউনিক্স ফাইল / পাথের নামগুলির সাথে জড়িত সম্ভাব্য মাথাব্যথার বিষয়ে আরও পড়তে চান তবে একটি ভাল সূচনা পয়েন্টটি হ'ল মাইকিউইউউইউইলজইন.আর
jw013
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.