ওএস এক্স-এ টার্মিনাল থেকে সাফ কমান্ড


24

বলুন যে আমি 'mv * .jpg .. \ Photos' টার্মিনালে একটি কমান্ড লিখেছি এবং টাইপ করার সাথে সাথে বুঝতে পারি যে আমি আর এই আদেশটি কার্যকর করতে চাই না। আমি শুধু পুরো বিবৃতি মুছতে চাই। আমি পুরো স্ক্রিনটি সাফ করতে বা কোনও বাশ ইতিহাস মুছতে চাই না আমি কেবল বর্তমান লাইনটি বাতিল করতে এবং এটি মুছতে চাই।

একটি কীবোর্ড শর্টকাট আছে বা আমি আসলে প্রতিটি চরিত্র মুছতে হবে?

উত্তর:


36

ধরে নিচ্ছেন আপনি ব্যাশে আছেন, Ctrl+ ব্যবহার করুন U


ধন্যবাদ! এটা এটা করেছে। কোথাও ডকুমেন্টেড কীবোর্ড শর্টকাটের একটি ফর্ম্যাট তালিকা আছে?
পল আলেকজান্ডার


2
এটি আমার পক্ষেও zshell এ কাজ করেছিল।
ল্যান্ডনশ্রপ্প

1
এটি কেবল তখনই কাজ করে যদি আপনার কার্সার লাইনের শেষে থাকে। এই পরিস্থিতিতে যেখানে আপনার কার্সার শুরুতে আপনার সিটিআরএল-কে ব্যবহার করতে হবে
জারোদ নেটটলস

কীভাবে আপনি কোনও স্ক্রিপ্টে এটি সৃষ্টি করবেন?
জনি

7

অনেক প্রোগ্রাম যা অপেক্ষার আপনি একটি কমান্ড লাইন টাইপ করতে এবং তারপর যে লাইন চালানো, ব্যাশ সহ, নিতে জন্য Ctrl+ + C"বর্তমান কাজের বাতিল এবং প্রধান প্রম্পট ফিরে যেতে" মানে।

বাশ সহ কয়েকটি প্রোগ্রামে Ctrl+ U( ওএস এক্স-এর টার্মিনাল থেকে সাফ কমান্ড ) নিতে "কার্সার অবধি লাইনটির প্রারম্ভটি মুছুন " (বা "পুরো লাইনটি মুছুন ") বোঝায় take

ব্যাশে, Ctrl+ Cএবং Ctrl+ এর Uমধ্যে পর্যবেক্ষণযোগ্য পার্থক্য অন্তর্ভুক্ত:

  • আপনি পূর্বাবস্থা করতে পারেন Ctrl+ + U, কিন্তু না Ctrl+ + C
  • Ctrl+ + Uকার্সার পর লাইনের অংশ, যদি থাকে অপরিবর্তিত।
  • Ctrl+ Uস্ক্রীন থেকে প্রভাবিত পাঠ্য মুছে দেয়; Ctrl+ Cবর্তমান লাইনের নীচে একটি নতুন প্রম্পট দেখায়।

কখনও কখনও আপনি একটি কমান্ড টাইপ করা বন্ধ করতে চান তবে এটি চালানোর জন্য শেল ইতিহাসে প্রবেশ করুন। একটি কার্যকর কৌশলটি #লাইনের শুরুতে একটি রাখা এবং এটি সম্পাদন করা: যেহেতু লাইনটি এখন একটি মন্তব্য, এটি কিছুই করবে না। ব্যাশে, একটি একক-কী শর্টকাট রয়েছে: Alt+ #


2

একটি readlineফাংশন রয়েছে যা সম্ভবত কোনও কী-স্ট্রোকের সাথে আবদ্ধ নয় kill-whole-lineযা পুরো লাইনটি মারবে কেবল কার্সারের আগে অংশটি মেরে ফেলার বিরুদ্ধে ( unix-line-discardযা কিছুটা ভুল-ধারণাযুক্ত এবং আবদ্ধ Ctrl- u)।

আপনি যে কোনও উপলভ্য কীস্ট্রোককে এটিকে আবদ্ধ করতে পারেন। আমি পছন্দ করি ShiftAlt- Uযেহেতু এটি সম্পর্কিত ফাংশন। এই কীস্ট্রোকটি আবদ্ধ হতে পারে do-lowercase-versionযার অর্থ এটি আনশিফ্ট সংস্করণ যা করে তা করে (এই ক্ষেত্রে upcase-word)। যেহেতু আমাদের এটি করতে দুটি কী দরকার নেই, আসুন আমরা এটিটি ব্যবহার করি।

আপনি এইভাবে বাঁধাই তৈরি করে কমান্ড লাইনে চেষ্টা করে দেখতে পারেন:

bind '"\eU":kill-whole-line'

বা আপনার ~/.inputrcফাইলে এই লাইনটি লাগিয়ে অবিচল করে দিন :

"\eU":kill-whole-line

একটি Ctrl- uবা ShiftAlt- U(অথবা যে কোনও অপারেশন পূর্বাবস্থায় ফিরে আসতে পারে) করতে, Ctrl- Shift- _(আন্ডারস্কোর) বা Ctrl- x Ctrl- u(দুটি কীস্ট্রোক) টিপুন । অথবা আপনি চাপ দিয়ে কী মেরেছেন (ইয়ঙ্ক) এ পেস্ট করতে পারেন Ctrl- yযা আপনি যদি পাঠ্যের একাধিক অনুলিপি চান তবে পুনরাবৃত্তি করা যেতে পারে।

যাইহোক, আপনি যদি কার্সার থেকে লাইনের শেষ প্রান্তে পাঠ্যকে হত্যা করতে চান, আপনি Ctrl- টিপতে পারেন k। সুতরাং উপরে বর্ণিত বাঁধাই না করে আপনি Ctrl- u Ctrl- চাপ দিয়ে পুরো লাইনটি মেরে ফেলতে পারেন k। এই কী-স্ট্রোকগুলির মধ্যে দ্বিতীয়টির দ্বারা নিহত অংশটি কেবলমাত্র কিল বাফারে সংরক্ষণ করা হবে, তবে আপনি এখনও উভয়টিকে পুনরুদ্ধার করতে দুবার পূর্বাবস্থায় ফিরে আসতে পারেন।

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