আপনার প্রশ্নের প্রথমত বাশার সাথে টার্মিনালের সাথে কিছুই করার নেই। টার্মিনাল প্রোগ্রামগুলির পাঠ্য প্রদর্শন করার জন্য প্রতিক্রিয়া জানাচ্ছে এবং প্রোগ্রামগুলি চালু করার পরে বাশ নিজেই কোনও নিয়ন্ত্রণ রাখে না।
টার্মিনালগুলি রঙ, ফন্ট, কার্সার অবস্থান এবং আরও অনেক কিছু নিয়ন্ত্রণ করতে নিয়ন্ত্রণ সিকোয়েন্স সরবরাহ করে। স্ট্যান্ডার্ডাইজড টার্মিনাল ক্রমের তালিকার জন্য http://www.termsys.demon.co.uk/vtansi.htm দেখুন have
উদাহরণস্বরূপ
- লাইনের শুরুতে কার্সারটি অবস্থান করুন
- এরপরে লাইনটি মুছুন
- একটি নতুন লাইন লিখুন
একটি অগ্রগতি বার তৈরি করতে।
আরও উন্নত টার্মিনাল এস্কেপ সিকোয়েন্সগুলি সাধারণত টার্মিনাল নির্ভর, যেমন কেবল ইটার্ম বা এক্সটার্মের সাথে কাজ করে। ncurses - এমন একটি প্রোগ্রামিং লাইব্রেরি যা টার্মিনালের সাথে ইন্টারেক্টিভ প্রোগ্রামগুলি তৈরি করে যাতে আপনাকে এস্কেপ সিকোয়েন্সগুলি ব্যবহার করতে হবে না।
টার্মিনাল সিকোয়েন্সগুলির সাথে কীভাবে একটি বিদ্যমান লাইনটি ওভাররাইট করা যায়
echo long text
sleep 1
printf "\033[1A" # move cursor one line up
printf "\033[K" # delete till end of line
echo foo
টার্মিনাল ক্রম ছাড়াই কীভাবে বিদ্যমান লাইনটি ওভাররাইট করা যায়
একটি সহজ সমাধান হ'ল শেষে একটি নতুন লাইন না লিখলেও ক্যারেজ রিটার্ন লিখুন যা মূলত লাইনটির শুরুতে কার্সারটিকে পুনরায় সেট করে, যেমন:
echo -n first
sleep 1
echo -ne "\rsecond"
echo
\r
অথবা গাড়ি ফেরত লাইনের শুরুতে কার্সার রাখুন এবং আপনি লাইন বিষয়বস্তু ওভাররাইট করতে পারবেন হবে।
বাফারের মতো less
বা এর মধ্যে স্যুইচ করুনvi
এর আচরণটি less
আরও উন্নত টার্মিনাল বৈশিষ্ট্যের কারণে, বিকল্প স্ক্রিনের কারণেও হয়:
ভিটি 102 মোডে, বিকল্প স্ক্রিন বাফারটি সক্রিয় এবং নিষ্ক্রিয় করার জন্য এস্কেপ সিকোয়েন্স রয়েছে, যা উইন্ডোর প্রদর্শনের ক্ষেত্রের সমান আকার। সক্রিয় করা হলে, বর্তমান স্ক্রিনটি সংরক্ষণ করা হয় এবং বিকল্প স্ক্রিনের সাথে প্রতিস্থাপন করা হয়। সাধারণ স্ক্রিনটি পুনরুদ্ধার না হওয়া পর্যন্ত উইন্ডোটির শীর্ষে স্ক্রল করা লাইনগুলিকে অক্ষম করা হবে। এক্সটার্মের জন্য টার্ম ক্যাপ (5) এন্ট্রি ভিজ্যুয়াল এডিটর vi (1) সম্পাদনা করার জন্য এবং প্রস্থান করার সময় স্ক্রিনটি পুনরুদ্ধার করার জন্য বিকল্প স্ক্রিনে স্যুইচ করতে দেয়। একটি পপআপ মেনু এন্ট্রি কাট এবং পেস্টের জন্য সাধারণ এবং বিকল্প স্ক্রিনের মধ্যে স্যুইচ করা সহজ করে তোলে।
http://rosettacode.org/wiki/Terminal_control/Pareserve_screen এটিকে কীভাবে নিজে করতে হয় তার কয়েকটি উদাহরণ তালিকাভুক্ত করে, হয় হয় টিপুট এর মাধ্যমে বা কিছু পালানোর অনুক্রমের মাধ্যমে।