আমি কোথায় "sudo !!" কমান্ড সম্পর্কে ডকুমেন্টেশন পেতে পারি


20

আমি কেবল শিখেছি যে লিনাক্সের একটি sudo !!কমান্ড রয়েছে যা আক্ষরিকভাবে sudoশেষ প্রবেশ করা কমান্ডের সাথে প্রযোজ্য । আমি এটি সম্পর্কে কখনও শুনিনি।

এটি কি সাধারণ নিয়ন্ত্রণ? আমি এটি সম্পর্কে নথিপত্র কোথায় পেতে পারি?


4
আপনি কমান্ডলাইনফু.কম / কম্যান্ডস / ব্রাউজ / স্পোর্ট- বাই -ভোটগুলি পরীক্ষা করে দেখতে চাইতে পারেন । কিছু সত্যিই দুর্দান্ত শর্টকাট।
লিও

উত্তর:


36

এটি কেবল বাশ শর্টকাট। এটা হয় না sudo!!। এটি sudo !!(স্থান নোট করুন)

!!ব্যাশ মধ্যে মূলত পূর্ববর্তী কমান্ডের সম্প্রসারণ করা হয়।

বাশ ম্যান পৃষ্ঠার "ইতিহাস সম্প্রসারণ" বিভাগটি একবার দেখুন:

http://www.gnu.org/software/bash/manual/bashref.html#Event-Designators


আমি আমার আগের পোস্টটি সম্পাদনা করেছি, আপনি যেমন বলেছিলেন আমি স্থানটি ভুলে গিয়েছি!
পিয়র-আলেকজান্দ্রে বাউচার্ড

ওহ, আমি এই শর্টকাটটি আর কোথাও দেখিনি!
পিয়র-আলেকজান্দ্রে বাউচার্ড

29

এটা আসলে এর sudo !!কমান্ড নিয়ে গঠিত যা sudo, যার সাহায্যে আপনি সম্ভবত পরিচিত, এবং একটি ঘটনা designator , !!যা প্রবেশ গত কমান্ড বোঝায়। বিভাগটির bashঅধীনে ম্যান পৃষ্ঠাতে আপনি আরও সন্ধান করতে পারেন Event Designators

Event Designators
   An event designator is a reference to a command line entry in the  his‐
   tory  list.   Unless  the reference is absolute, events are relative to
   the current position in the history list.

   !      Start a history substitution, except when followed by  a  blank,
          newline,  carriage return, = or ( (when the extglob shell option
          is enabled using the shopt builtin).
   !n     Refer to command line n.
   !-n    Refer to the current command minus n.
   !!     Refer to the previous command.  This is a synonym for `!-1'.
   !string
          Refer to the most recent command preceding the current  position
          in the history list starting with string.
   !?string[?]
          Refer to the most recent command preceding the current postition
          in the history list containing string.  The trailing  ?  may  be
          omitted if string is followed immediately by a newline.
   ^string1^string2^
          Quick  substitution.   Repeat  the  previous  command, replacing
          string1 with string2.  Equivalent  to  ``!!:s/string1/string2/''
          (see Modifiers below).
   !#     The entire command line typed so far.

3

কার্যকারিতার এই বিভাজনটি লিনাক্স / ইউনিক্সকে অন্যান্য বিকল্পগুলির তুলনায় অনেক বেশি শক্তিশালী করে তোলার একটি সর্বাধিক সুন্দর নকশার নীতি যেখানে প্রতিটি প্রোগ্রাম কনভেনশন এবং ক্ষমতাগুলির একটি পৃথক স্বাধীন দ্বীপ।

"প্রতিটি প্রোগ্রামকে একটি কাজ করতে, এবং এটি ভালভাবে করুন"

বরং বাস্তবায়ন !! সুডোর (বা অন্য কোনও কমান্ড) ভিতরে যা পূর্ববর্তী আদেশটি পুনরাবৃত্তি করে উপকৃত হতে পারে - এটি একবার প্রয়োগ করা হয় (শেলগুলিতে) এবং সমস্ত কমান্ড এতে উপকার করতে পারে। সুতরাং আপনি এটি করতে পারেন:

$ echo !!     # will echo the last command
$ time !!     # will repeat and time the last command
$ strace !!   # will repeat the last program while system-call tracing it

ইত্যাদি।

তবে এখানেই শেষ হচ্ছে না। শেল এর মাধ্যমে ইতিহাস প্রসারণের চেয়ে অনেক বেশি কাজ করে! ইভেন্ট ডিজাইনার আপনার কমান্ড কার্যকর করার আগে এটি পরিবর্তনশীল সম্প্রসারণ, ফাইল-নাম ওয়াইল্ডকার্ড সম্প্রসারণ (গ্লোববিং), কমান্ড প্রতিস্থাপন, ফাইল / আইও পুনঃনির্দেশ এবং আরও অনেক কিছু করে। যার সমস্তটি শেল থেকে ডেকে আনা হচ্ছে এমন কোনও কমান্ডে ব্যবহার করা যেতে পারে।

আর একটি বড় সুবিধা হ'ল আপনি যদি নিজের শেলটি শিখতে কিছুটা সময় ব্যয় করেন (এই ক্ষেত্রে 'ম্যান বাশ') আপনার একবার এটি শিখতে হবে এবং আপনি সর্বদা সর্বত্র এই শক্তিশালী ক্ষমতাগুলি ব্যবহার করতে পারেন। প্রতিটি প্রোগ্রাম বা ইউটিলিটিতে কমান্ড লাইন অ্যাগ্রারগুলি কীভাবে পরিচালনা করা হয় তা শিখানোর চেয়ে শক্তিশালী নীতি এবং কনভেনশনগুলির একটি সেট শিখাই অনেক সহজ।

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