আপ বোতাম টিপানো ক্লান্তিকর এবং আমি যে আদেশটি সন্ধান করছিলাম তা মিস করতে পারি miss সুতরাং history
টার্মিনালে টাইপ করার পরে একটি সংখ্যায় সূচকযুক্ত আমি পূর্বে প্রবেশ করানো সমস্ত কমান্ড দেয়। কমান্ডের সাথে যুক্ত নম্বরে কল করার কোনও উপায় আছে কি?
আপ বোতাম টিপানো ক্লান্তিকর এবং আমি যে আদেশটি সন্ধান করছিলাম তা মিস করতে পারি miss সুতরাং history
টার্মিনালে টাইপ করার পরে একটি সংখ্যায় সূচকযুক্ত আমি পূর্বে প্রবেশ করানো সমস্ত কমান্ড দেয়। কমান্ডের সাথে যুক্ত নম্বরে কল করার কোনও উপায় আছে কি?
উত্তর:
বাশ ইতিহাস অনেক সহায়ক কাজ করতে পারে এবং Strg-r
উল্লিখিত টেরি ওয়াংয়ের সাথে অনুসন্ধানগুলি তাদের মধ্যে একটি গুরুত্বপূর্ণ। তবে আপনি যা চেয়েছিলেন ঠিক তা করাও সম্ভব।
আপনি আগের কমান্ডটি দিয়ে আবার করতে পারেন !!
। এটির সাহায্যে আপনি পূর্ববর্তী কমান্ডটি সম্পাদনা করতে পারেন। উদাহরণস্বরূপ যদি আপনি কোনও কমান্ডের জন্য মূল অধিকারগুলি ভুলে যান
apt-get install a-long-list-of-packages
আপনাকে সে সমস্ত আবার টাইপ করতে হবে না। পরিবর্তে শুধু কল
sudo !!
আপনি যদি নিজের ইতিহাস থেকে নির্দিষ্ট অবস্থানে কমান্ডটি পুনরায় কার্যকর করতে চান তবে !
উদাহরণস্বরূপ , আপনি এটিও ব্যবহার করতে পারেন
!3
কমান্ডটি পুনরায় সম্পাদন করতে পজিশনে ৩. সচেতন থাকুন যে এটি শীর্ষ থেকে গণনা করে। সুতরাং আপনি যদি আপনার ইতিহাসে 500 টি কমান্ড সংরক্ষণ করেন !1
তবে তা "500 কমান্ড আগে" হবে। আপনি নেতিবাচক সংখ্যা ব্যবহার করতে পারেন। উদাহরণ স্বরূপ
!-2
দ্বিতীয় শেষ কমান্ড পুনরায় কার্যকর করা হবে।
আপনি শেষ কমান্ডটি পুনরায় কার্যকর করতে পারেন যা একটি স্ট্রিংয়ের মতো শুরু হয়েছিল
!apt-
যা "এপটি-" দিয়ে শুরু হওয়া শেষ পংক্তির পুনরায় কাজ করবে। আপনি যদি সর্বশেষ কমান্ডটি চান যেখানে স্ট্রিংটি লাইনের যে কোনও জায়গায় উপস্থিত হয়েছে, আপনি এর মতো কিছু ব্যবহার করতে পারেন
!?pt-ge
বাশ ইতিহাস করতে পারে এমন আরও মজার জিনিস রয়েছে। সম্ভাবনার বিস্তৃত ধারণা দেওয়ার জন্য, আপনি ইতিহাস থেকে একটি কমান্ডের প্যারামিটারটি বিশেষভাবে অ্যাক্সেস করতে পারেন। সুতরাং
!-5:3:p
শেষ কমান্ড থেকে পঞ্চম তৃতীয় প্যারামিটার মুদ্রণ করা হবে।
সম্পাদনা: নীচে রডির মন্তব্য সম্পর্কিত, মানক সেটিংস সহ এই ব্যাশ ইতিহাসের বিস্তৃতিটি সরাসরি বাস্তবায়িত হয়। এটা সম্ভবত সেরা ভালো বর্ণনা আছে: মত একটি কল !-3
করা হয় প্রতিস্থাপিত আপনার ইতিহাস থেকে তৃতীয় গত কমান্ড দিয়ে শেল দ্বারা তারপর আপনার ইনপুট (প্রতিস্থাপন সঙ্গে) মৃত্যুদন্ড কার্যকর। সুতরাং আপনি যদি টাইপ করে !-3
টিপুন ENTER
এবং আপনার তৃতীয় শেষ কমান্ডটি ছিল ls ~
, এটি কার্যকরভাবে একইরূপে আপনি ls ~
আবার টাইপ করেছেন এবং ENTER
"নিজের নিজের" টিপুন sed
যদি আপনি এটি না চান তবে আপনি শেল বিকল্পটি সেট করতে পারেন histverify
। শেল বিকল্পগুলি সেট এবং আনসেট করার জন্য, আপনি shopt
কমান্ডটি পড়তে চাইতে পারেন । সঙ্গে histverify
সেট, মত একটি কল !-3
শুধুমাত্র আপনার কমান্ড লাইন থেকে আপনার ইতিহাস থেকে প্রতিস্থাপন লিখেছেন, কিন্তু এটা সরাসরি চালানো যায় না। আপনার কাছে বক্তব্য রাখার জন্য, ENTER
নিজেকে ক্রুশিয়ালটি চাপুন - বা আপনি যদি চান তবে এ থেকে বিরত থাকুন।
!
বেশ জঘন্য ... বিপদজনক ... আমি !-4
এটি চালানোর আগে ঠিক কী করেছে তা জানতে চাই । নাকি এটি আপনাকে প্রথমে দেখায়? কুল সারসংক্ষেপ!
!-238
। আপনার দ্বিতীয় শেষ, তৃতীয় শেষ, সম্ভবত ফিথ লাস্ট কমান্ডটি মনে রাখা খুব কঠিন হবে না;) প্রায়শই লিনাক্সের সাথে (এবং, প্রকৃতপক্ষে, সাধারণভাবে কম্পিউটিং দিয়ে) এটি প্রত্যাশা করা হয় যে আপনি কী করছেন তা আপনি জানেন। এবং যদি আপনি সত্যিই অতিরিক্ত সুরক্ষা জাল চান, তবে এটি একটি shopt
দূরে;)
হ্যা এখানে. যদি উদাহরণস্বরূপ, আপনি যে কমান্ডটি তার পাশেই 1234 নম্বরটি কার্যকর করতে চান, তা করুন:
!1234
অন্যান্য দরকারী জিনিস:
আপনি চালিত সর্বশেষ আদেশটি চালাতে চাইলে, করুন:
!!
আপনি চালিত সর্বশেষ ls
আদেশটি চালাতে চাইলে , করুন:
!ls
আপনি যদি কেবল দৌড়ে এসেছেন ls /some/long/path
এবং আপনি cd
এটি করতে চান তবে করুন:
cd !$
আরও তথ্যের জন্য:
কী সংমিশ্রণটি ব্যবহার করুন Ctrl
- r
, আপনি বাশ ইতিহাস অনুসন্ধান করতে কীওয়ার্ডটি ব্যবহার করতে সক্ষম হবেন।
একটি দ্রুত বাশ কী বাঁধাইয়ের রেফারেন্স: http://ss64.com/bash/syntax-keyboard.html
যদি আপনি কোনও কমান্ডের ইতিহাস নম্বর পেয়ে থাকেন এবং আপনি এটি আবার কার্যকর করতে চান !
তবে নম্বরটি অনুসরণ করুন, উদাহরণস্বরূপ !1234
এবং টিপুন Enter। এটি ইতিহাস বিস্তারের অংশ ; আপনি কর্মপ্রণালী করতে সংশোধনকারীদের এটি সম্মুখের।
আপনি যদি কমান্ডটি চালনার আগে সম্পাদনা করতে চান তবে fc 1234
বাহ্যিক সম্পাদককে ডাকে।
তবে টেরি ওয়াং যেমন ইতিমধ্যে উল্লেখ করেছেন যে সাধারণত ইতিহাসের একটি কমান্ডের ইতিহাস সংখ্যা নির্ধারণের চেয়ে দ্রুততর উপায় রয়েছে যার সাথে ইনক্রিমেন্টাল সন্ধানের অনুরোধ করা Ctrl+ R( Enterআপনি যে আদেশটি কার্যকর করতে চান সেই আদেশটি খুঁজে পেলে টিপুন ) বা fc PREFIX
পূর্ববর্তী সম্পাদন করার জন্য রয়েছে কমান্ড দিয়ে শুরু PREFIX
।