অন্যান্য উত্তর এবং সম্পর্কিত মন্তব্যগুলিতেSTTY কিছু ভুলত্রুটি পরিষ্কার করার জন্য historical তিহাসিক কমান্ডের কয়েকটি নোট :
ডিসি ভিটি05 বা ভিটি 50 এর মতো পূর্ববর্তী টার্মিনালগুলি এবং তার আগে টেলিফ্রিন্টারগুলি কেবলমাত্র বড় হাতের অক্ষরকেই সমর্থন করে। এর অর্থ হ'ল কোনও ছোট অক্ষরের অক্ষর তাদের থেকে ইনপুট হতে পারে না বা তারা উচ্চতর অক্ষরের চেয়ে অন্য কোনও চিঠি প্রদর্শন করতে সক্ষম হয় না।
ইউনিক্স কেস সংবেদনশীল এবং বেশিরভাগ কমান্ড লোয়ার কেস হওয়ার কারণে আপনি দেখতে পাচ্ছেন যে সেখানে একটি সমস্যা আছে। সেজন্য এগুলি পরিচালনা করতে বিশেষ টার্মিও / টার্মিওস মোডগুলি রয়েছে (এবং এটি এখনও আধুনিক ইউনিসে রয়েছে যদিও সেই টার্মিনালগুলি দীর্ঘ হয়ে গেছে) those
টার্মিও / টের্মিওগুলি ইউনিক্সের টিটিআই ড্রাইভারটি নিয়ন্ত্রণ করার জন্য যথাক্রমে পুরানো এবং নতুন ইন্টারফেস। একটি টার্মিও (গুলি) এ ioctl, আপনি ইনপুট, আউটপুট, নিয়ন্ত্রণ পতাকাগুলি নির্দিষ্ট করে ... যা সিরিয়াল লাইনে বৈদ্যুতিক সিগন্যালগুলি কীভাবে ইনপুট এবং আউটপুট চরিত্রগুলিতে হ্যান্ডেল করা হবে এবং ড্রাইভারের আর্ট জিনিস যেমন প্রতিধ্বনি, লাইন সম্পাদক ... তাদের বেশিরভাগই আধুনিক ইউনিক্স ভিজিএ কনসোল বা সিউডো টার্মিনালের মতো ভার্চুয়াল টার্মিনালগুলিতে প্রয়োগ করে।
কমান্ড লাইন ইন্টারফেসটি termio(s)হ'ল sttyকমান্ড।
উচ্চ-কেস টার্মিনালগুলি পরিচালনা করতে, এখানে তিনটি termio(s)পতাকা জড়িত রয়েছে:
IUCLC(ইনপুট আপার আপার কে লোয়ার কেস এ): ইনপুট করার সময় আগত অক্ষরগুলি লোয়ার কেসে রূপান্তরিত হয়। তার অর্থ Aটার্মিনাল দ্বারা প্রেরিত একটি হিসাবে বিবেচিত হয় a। তার মানে তাদের এই সঙ্গে, আমি এখন টাইপ করতে পারেন LSআমার VT50, এবং শেল পড়তে হবে lsথেকে /dev/ttyX। আমি এখন sttyকমান্ড চালাতে পারি ।
- এখন,
IUCLCএকা এবং টার্মিনাল সহ echo, আমি টাইপ করার সময় LS, ড্রাইভারটি lsটার্মিনালে ফিরে পাঠাত (যাতে আমি কী টাইপ করতে পারি তা প্রদর্শন করতে পারে না), সুতরাং আমাদেরও প্রয়োজন OLCUC(আউটপুট লোয়ার কেস টু আপার কেস), এটি হ'ল টার্মিনালে প্রেরণের আগে আমাদের যে কোনও ছোট অক্ষরের বড় হাতের অক্ষরে রূপান্তর করতে হবে।
- এখন, আমরা একটি ভিটি 50 থেকে ইউনিক্স পরিচালনা করতে পারি, তবে আমরা যদি এখন বড় হাতের অক্ষরগুলি ইনপুট করতে চাই তবে কী হবে? এটিই
xcase স্থানীয় পতাকাটি আসে This এটি (কেবলমাত্র ইনপুট মোডে) Aটাইপ করে একটি উচ্চতর কেস প্রেরণ করতে দেয় \Aএবং আউটপুটে একটি উপরের কেস Aহিসাবে রেন্ডার করা হয় \A। (এটি একটি লিনাক্সে প্রয়োগ করা হয়নি)
sttyকমান্ড সংশ্লিষ্ট হয়েছে iuclc, olcucএবং xcase: সেটিংস এবং সব তিনটি জন্য একটি alias lcase। ডিফল্ট সেটিংস এবং আপনি যা পাবেন stty saneতা lcaseবন্ধ।
সুতরাং, আপনি যখন কোনও ভিটি 50 এ থাকবেন, আপনাকে যা করতে হবে তা চালানো যেতে পারে:
stty lcase
কিছু করতে সক্ষম হতে। তবে ধরুন, আপনি যখন কেবলমাত্র বড় হাতের অক্ষর পাঠাতে পারেন তবে কীভাবে আপনি তা করবেন? এই জন্য আপনার STTYএকটি উপাধি হিসাবে একটি কমান্ডের প্রয়োজন sttyএবং সে কারণেই একটি উপাধি হিসাবে sttyসমর্থন করে ।LCASElcase
এর মতো কোনও SANEউপনাম নেই কারণ আপনি stty saneযখন টার্মিনালটি সমস্ত-বড় হয়ে যান তখন আপনি করতে চান না ।
আপনি যদি কোনও সাধারণ টার্মিনালে চালিয়ে যান stty lcaseবা stty olcucভুল করে চালিয়ে যান (এটি চেষ্টা করুন xtermবা যেকোন আধুনিক টার্মিনালটিতে), সেখানেই আপনাকে stty saneস্বাভাবিক অবস্থায় ফিরে আসতে হবে। তবে এর জন্য আপনার কোনও STTYআদেশের দরকার নেই । আপনি টাইপ তাহলে stty sane, আপনি হবে দেখতে STTY SANEফিরে প্রতিধ্বনিত, কিন্তু যে শুধুমাত্র প্রদর্শিত পাঠ্য (সেখানে প্রবেশ করে নি কমান্ড) যে অনুবাদ করা হবে, এটি এখনও stty saneকমান্ড রান করা হবে না।
ঐ iuclc, olcuc, xcaseপতাকা POSIX দ্বারা নির্দিষ্ট করা ব্যবহৃত (এবং যে সম্ভবত কেন এটা লিনাক্স বাস্তবায়িত হয় যদিও আমি গম্ভীরভাবে সন্দেহ কেহ কখনও একটি লিনাক্স সিস্টেমে সকল পুরানো টার্মিনাল (মজার জন্য ছাড়া) কোনো সংযুক্ত), কিন্তু এ সরানো হয়েছে POSIX: 2001।