কোনও কমান্ড ব্যর্থ হলে অবিলম্বে ব্যাশ প্রস্থানকারী "সেট-ই" এর প্রভাবটি কীভাবে পূর্বাবস্থায়ী করা যায়?


205

set -eএকটি ইন্টারেক্টিভ ব্যাশ শেলের মধ্যে প্রবেশ করার পরে , কোনও কমান্ড শূন্য-শূন্যের সাথে প্রস্থান না হলে ব্যাশটি অবিলম্বে প্রস্থান করবে। আমি কীভাবে এই প্রভাবটিকে পূর্বাবস্থায় ফিরিয়ে আনতে পারি?

উত্তর:


309

সঙ্গে set +e। হ্যাঁ, এটি পিছনে যে আপনি শেল বিকল্পগুলি দিয়ে এটি সক্ষম করে set -এবং এগুলি দিয়ে অক্ষম করে set +। Raতিহাসিক কিসমিস, ডনচানো।


আপনাকে অনেক ধন্যবাদ, এটি সংশ্লিষ্ট ম্যানুয়াল পৃষ্ঠাটির খুব শেষ পংক্তির মধ্যে রয়েছে ( ফ্যাকস.আর / ডকস / বাশম্যান / বাশরেফ_56 এইচটিএমএল ) যা আমি শেষ পর্যন্ত পড়িনি read
তিয়ানয়ি কুই

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

12
দুঃখের বিষয়, ইউনিক্স শেল ভাষা (যার বেশিরভাগটি 'বাশ'-এর সাথে নির্দিষ্ট নয়) আজ অন্তত অভ্যন্তরীণভাবে সামঞ্জস্যপূর্ণ প্রোগ্রামিং ল্যাঙ্গুয়েজগুলির মধ্যে একটি যা এখনও ব্যাপকভাবে ব্যবহৃত হয়। আপনি এই ছোট ছোট warts অনেক শিখতে হবে। এবং আমি বলব যে এটি একটি ডকুমেন্টেশন বাগ আছে।
zwol

10
historicalতিহাসিক আঙ্গুর কি কিসমিন কি নরক!
জেমস

2
অবশেষে, বাশের একটি অন্যায়ভাবে বাশ দেওয়া: একক ড্যাশ হ'ল মানক পসিক্স শেল কমান্ড লাইন বিকল্প এবং তাই "কিছু করতে" এর পক্ষে সবচেয়ে স্বাভাবিক। +এর মতো -তবে কোনও কিছুকে অতিক্রম করার অর্থ "≠" এর মতো "নয়"।
সিরো সান্তিলি 郝海东 冠状 病 六四 事件 法轮功

68

আপনি একবারে ওভাররাইড করতে চাইলে set +e/ ব্যবহার করা অযাচিত হতে পারে set -e। আমি একটি সহজ সমাধান খুঁজে পেয়েছি।

এটি এর পরিবর্তে এটি করার পরিবর্তে:

set +e
command_that_might_fail_but_we_want_to_ignore_it
set -e

আপনি এটি এইভাবে করতে পারেন:

command_that_might_fail_but_we_want_to_ignore_it || true

বা, যদি আপনি কীস্ট্রোকগুলি সংরক্ষণ করতে চান এবং কিছুটা ক্রিপ্টিক হোন না:

command_that_might_fail_but_we_want_to_ignore_it || :

আশাকরি এটা সাহায্য করবে!


11
এর ইতিহাস সম্পর্কে ভাবছিলাম :, এবং আমার উত্তরটি এখানে খুঁজে পেয়েছিল , যদি অন্য কেউ আগ্রহী হয়।
3cheesewheel

4
আপনি কেবল যে কমান্ডটি চালাচ্ছেন তার রিটার্ন কোডের বিষয়ে চিন্তা না করা হলেই এটি প্রযোজ্য।
ইসহাক

20
  • পরিবর্তে + ব্যবহার করা - এর ফলে এই পতাকাগুলি বন্ধ হয়ে যায়।

উৎস

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