CTRL + 4 (এবং CTRL + \) ব্যাশে কী করবে?


22

আমি শুধু দুর্ঘটনা দ্বারা জানতে পারলেন যে CTRL+ + 4 পড়া প্রোগ্রাম বন্ধ stdinকম্যান্ড-লাইন থেকে ইনপুট।

প্রোগ্রাম পড়ার সময় আমি CTRL+ 4বা CTRL+ টাইপ করার সময় এটি দেখতে কেমন লাগে/stdin

$ cat
wefwef
wefwef
^\Quit
$ bc
bc 1.06.95
Copyright 1991-1994, 1997, 1998, 2000, 2004, 2006 Free Software Foundation, Inc.
This is free software with ABSOLUTELY NO WARRANTY.
For details type `warranty'. 
^\Quit
$

আমি ^\Quitপ্রদর্শিত হই এবং তারপরে প্রোগ্রামটি বন্ধ হয়। ব্যবহারের তুলনায় এর পার্থক্য কী ^Cবা ^D? কি করে ^\Quit?

সম্পাদনা : খুঁজে পেয়েছি যে CTRL+ \খুব একই জিনিস।

উত্তর:


37

Ctrl + 4 প্রেরণ করে ^ \

টার্মিনালগুলি কীগুলি নয়, অক্ষর (বা আরও স্পষ্টভাবে বাইট) প্রেরণ করে। মুদ্রণযোগ্য চরিত্রের প্রতিনিধিত্ব করে এমন একটি কী টিপে গেলে টার্মিনাল সেই অক্ষরটিকে অ্যাপ্লিকেশনটিতে প্রেরণ করে। সর্বাধিক ফাংশন কি পালাবার ক্রম হিসাবে এনকোড করা হয়: অক্ষরের ক্রমের সাথে যে চরিত্র সংখ্যা 27. ফর্ম কিছু keychords দিয়ে শুরু Ctrl+ + character, এবং কয়েক ফাংশন কি, একটি নিয়ন্ত্রণ অক্ষর হিসাবে পাঠানো হয় - মধ্যে হওয়া ASCII অক্ষর সেট , যা সব আধুনিক কম্পিউটার ভিত্তি হিসাবে ব্যবহার করুন (ইউনিকোড, আইএসও ল্যাটিন- এন, ইত্যাদি সমস্ত এএসসিআইআই-এর সুপারপেট), ৩৩ টি অক্ষর হ'ল নিয়ন্ত্রণ অক্ষর: 0 থেকে 31 এবং 127 এর মধ্যে অক্ষর সংখ্যা characters নিয়ন্ত্রণের অক্ষরগুলি মুদ্রণযোগ্য নয়, তবে অ্যাপ্লিকেশনগুলিতে প্রভাব ফেলতে পারে; উদাহরণস্বরূপ 10 টি অক্ষর, যা কন্ট্রোল-জ (সাধারণত লিখিত ^ জে) হয় একটি নতুন লাইন চরিত্র, সুতরাং যখন টার্মিনালটি সেই অক্ষরটি প্রদর্শন করে, এটি একটি গ্লাইফ প্রদর্শন না করে কার্সারটিকে পরবর্তী লাইনে নিয়ে যায়। পালানোর অক্ষর নিজেই একটি নিয়ন্ত্রণ চরিত্র, ^ [(মান 27)।

সমস্ত Ctrl+ characterকিচর্ডগুলি কভার করার জন্য পর্যাপ্ত নিয়ন্ত্রণের অক্ষর নেই। কেবলমাত্র অক্ষর এবং অক্ষরগুলির @[\]^_?সাথে সম্পর্কিত নিয়ন্ত্রণের অক্ষর থাকে। যখন আপনি টিপুন Ctrl+ + 4বা Ctrl+ + $(যা আমি অনুমান হয় Ctrl+ + Shift+ + 4), টার্মিনাল পাঠাতে কিছু বাছাই করা হয়েছে। টার্মিনাল এবং এর কনফিগারেশনের উপর নির্ভর করে বেশ কয়েকটি সাধারণ সম্ভাবনা রয়েছে:

  • টার্মিনালটি সংশোধকটিকে উপেক্ষা Ctrlকরে অক্ষরটি প্রেরণ করে 4বা $
  • টার্মিনালটি একটি পালানোর ক্রম প্রেরণ করে যা চাবিত ঠিক কী এবং সংশোধককে এনকোড করে।
  • টার্মিনালটি অন্য কিছু নিয়ন্ত্রণ অক্ষর প্রেরণ করে।

অনেকগুলি টার্মিনাল অঙ্কের সারিটিতে কিছু কীগুলির জন্য নিয়ন্ত্রণ অক্ষর প্রেরণ করে:

  • Ctrl+ 2→ ^ @
  • Ctrl+ 3→ ^ [
  • Ctrl+ 4→ ^ \
  • Ctrl+ 5→ ^]
  • Ctrl+ 6→ ^^
  • Ctrl+ 7→ ^ _
  • Ctrl+ 8→ ^?

আমি জানি না এই বিশেষ সম্মেলনটি কোথায় দাঁড়িয়েছিল।

Ctrl+ + |একই চরিত্র পাঠায় কারণ এটা Ctrl+ + Shift+ + \এবং টার্মিনাল ^ \ কিনা শিফট কী বা চাপা ছিল না পাঠায়।

its \ প্রস্থান

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

কয়েকটি অক্ষর অগ্রভাগে অ্যাপ্লিকেশনটিতে সংকেত প্রেরণ করে। সি বিঘ্নিত সিগন্যাল (সিগিন্ট) প্রেরণ করে , যা প্রচলিতভাবে অ্যাপ্লিকেশনটিকে এটি কী করা বন্ধ করতে এবং ব্যবহারকারীর পরবর্তী কমান্ডটি পড়তে বলে। অ-ইন্টারেক্টিভ অ্যাপ্লিকেশনগুলি সাধারণত প্রস্থান করে। the the ছাড়ার সিগন্যাল (SIGQUIT) প্রেরণ করে , যা প্রচলিতভাবে অ্যাপ্লিকেশনটিকে কোনও কিছু না সঞ্চয় করে যত তাড়াতাড়ি সম্ভব প্রস্থান করতে বলে; অনেক অ্যাপ্লিকেশন ডিফল্ট আচরণকে ওভাররাইড করে না, যা তাৎক্ষণিকভাবে অ্যাপ্লিকেশনটি মারা যায় ¹ সুতরাং যখন আপনি টিপুন Ctrl+ + 4(অথবা কিছু ^ \ চরিত্র পাঠায়) এ catবা bc, তন্ন তন্ন যার ডিফল্ট আচরণ অগ্রাহ্য, অ্যাপ্লিকেশন মারা যায়।

টার্মিনালটি নিজেই ^\বার্তার অংশটি মুদ্রণ করে : এটি আপনার টাইপ করা চরিত্রটির দৃশ্যমান চিত্র রয়েছে এবং টার্মিনালটি রান্না করা মোডে রয়েছে এবং প্রতিধ্বনিত হবে (অক্ষরগুলি টাইপ করার সাথে সাথে টার্মিনাল দ্বারা প্রদর্শিত হবে, তার বিপরীতে নন-ইকো মোড যেখানে অক্ষরগুলিকে কেবল অ্যাপ্লিকেশনটিতে প্রেরণ করা হয়, যা এগুলি প্রদর্শিত হতে পছন্দ করতে পারে বা নাও পারে)। Quitঅংশ ব্যাশ থেকে আসে: এটা লক্ষ্য করছেন যে তার সন্তান প্রক্রিয়া মারা যান থেকে একটি সংকেত প্রস্থান, এবং যে লেট আপনি কি জানেন তার উপায়।

শেলগুলি সমস্ত সাধারণ সংকেতগুলি পরিচালনা করে, যাতে আপনি যদি শেলটিতে \ type টাইপ করেন তবে আপনি আপনার সেশনটি মারবেন না, আপনি কেবল একটি নতুন প্রম্পট পাবেন ^ C এর মতো ^

আপনি sttyকমান্ডটি দিয়ে টার্মিনাল সেটিংসের সাথে খেলতে পারেন ।

¹ এবং traditionতিহ্যগতভাবে একটি কোর ডাম্প উত্পন্ন করে , তবে অনেকগুলি সিস্টেম আজকাল ডিফল্টরূপে এটি অক্ষম করে।


সাইন ইন ফোরগ্রাউন্ড প্রক্রিয়া গ্রুপকে মেরে ফেলে এবং সিকুইটিটি এটি একটি মূল ডাম্প দিয়ে হত্যা করে। উভয় সংকেতই পরিচালনা করা যায়। পরবর্তী কমান্ডটি পড়ে আপনি কী বোঝাতে চাইছেন তা আমি নিশ্চিত নই । প্রারম্ভিক করডাম্পসাইজ সীমা 0 তে নির্ধারণ করা ব্যতীত সিস্টেমগুলি কোর ডাম্পগুলি অক্ষম করে না (কঠিন নয়, আপনি সাধারণত এটি উত্থাপনে মুক্ত হন)।
স্টাফেন চেজেলাস

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

ব্যতিক্রম এটি। সাইন ইন বর্তমানে চলমান কাজটিকে মেরে ফেলে। কেবলমাত্র কয়েকটি অ্যাপ্লিকেশনই তাদের নিজস্ব "অগ্রভাগ" টাস্কটি হ্রাস করতে পারে। আপনি অবশ্যই ভাবছেন lessবা vim। নোট যে cmd | less, CTRL-Cসাধারণত হত্যা করে cmd(কিছুদিনের জন্য lessএটা) বর্তমান কর্ম (ক অনুসন্ধানের মত বাতিল করতে ঘাঁটা করা হয়েছে) (ক্রমাগত)
Stéphane Chazelas

আমি আপনার উত্তরের শব্দটি এক্ষেত্রে বিভ্রান্তিকর মনে করি। সিগুয়েটটি সাধারণত পরিচালনা করা হয় না তা হ'ল এটি একইভাবে ব্যবহৃত হচ্ছে না। আপনি বর্তমানে যা করছেন তা বাতিল করতে আপনি CTRL-C টিপুন। কোনও কোর ডাম্প জেনারেট করার জন্য আপনি খুব মাঝেমধ্যে `CTRL-। Use ব্যবহার করবেন। কোনও অ্যাপ্লিকেশন এটি করার চেষ্টা করে আপনার পথে যেতে চায় এমন কোনও কারণ নেই।
স্টাফেন চেজেলাস

@ স্টাফেনচেজেলাস কেবল কম এবং ভিআইএম নয়, বেশিরভাগ টার্মিনাল ভিত্তিক অ্যাপ্লিকেশন যা ব্যবহারকারীর কমান্ডগুলি পড়ে। উদাহরণস্বরূপ REPL (বাশ, ড্যাশ, ksh, zsh, পাইথন, ইরব, fsharpi, গণিত,…) a এটি খুব কমই অস্বাভাবিক। স্বাক্ষর এবং সাইনকিউটকে অন্যরকম চিত্রযুক্ত করার জন্য আপনার প্রথম মন্তব্য অবজেক্ট এবং আপনার সাইনট এবং সাইনকিউইটি চিত্রের তুলনায় আপনার সর্বশেষ মন্তব্য বস্তুগুলি খুব অনুরূপ, যা আপনি কী গাড়ি চালাচ্ছেন তা সম্পর্কে আমাকে বিস্মিত করে।
গিলস 'অশুভ হওয়া বন্ধ করুন'

7

গিলস উত্তর ছাড়াও আমাকে যোগ করতে দিন, আপনি সর্বদা Ctrl-v+ key( Ctrl-v+ Ctrl+4এই ক্ষেত্রে) এর সাথে বাশনে অ-মুদ্রণযোগ্য অক্ষরগুলি ইনপুট করতে পারেন এবং এর সাথে অক্ষর কোডটি পরীক্ষা করতে পারেন

$ printf '^\' | od -An -tu    # input ^\ as C-v C-4
28

আপনি অক্ষরের দশমিক কোড পাবেন যা man asciiআপনি ফাইল বিভাজক (এফএস) এর সাথে সম্পর্কিত হিসাবে পরীক্ষা করতে পারেন ।


সুতরাং সিটিআরএল + ভি কি করে? আমি "পেস্ট ক্লিপবোর্ড" হওয়ার অভ্যস্ত।
জেডিগোসস

2
@ জেডিগুগোস: সিটিটিএল-ভি টার্মিনালকে নিম্নলিখিত চরিত্রটির ব্যাখ্যা না করার জন্য বলেছে । এটি দুর্ভাগ্যজনক সত্য যে জিইউআই কী সংমিশ্রণগুলি নিয়ন্ত্রণ নিয়ন্ত্রণগুলিকে নিয়ন্ত্রণ করেছে, অপ্রয়োজনীয় বিভ্রান্তির সৃষ্টি করে causing এটি ব্যবহার করত যে লিনাক্স জিইউআই কীগুলির জন্য Alt- [কী] ব্যবহার করেছিল (যেমন কপি / পেস্টের জন্য Alt-C / Alt / V), তবে লোকেরা স্পষ্টতই মনে করেছিল উইন্ডোজের মতোই করা আরও গুরুত্বপূর্ণ; ইতোমধ্যে ম্যাক ব্যবহারকারীদের সেই ক্রিয়াকলাপগুলির জন্য Ctrl কী পরিবর্তে কমান্ড কীটি ব্যবহার করতে কোনও সমস্যা নেই।
celtschk

(খাটো) কমান্ড: printf '%d\n' '"^\'?
ইসহাক
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.