\r
বা \b
পদ্ধতির পাশাপাশি , \033[2K
নিয়ন্ত্রণ চরিত্রটি ব্যবহার করা সম্ভব , যা টার্মিনালটিকে পুরো লাইনটি সাফ করতে বলে। এর তুলনায় এর সুবিধাটি \b
হ'ল \b
আপনি মুছে ফেলতে চান এমন পরিমাণের সাথে আপনার সংখ্যার মিল নেই এবং তুলনায় \r
নতুন পংক্তিটি যদি পুরানোের চেয়ে ছোট হয় তবে পর্দায় অক্ষর থাকবে না এক.
নীচে এটি এই প্রশ্নের ক্ষেত্রে কীভাবে প্রয়োগ করা যেতে পারে তার উদাহরণ দেওয়া আছে এবং বুট বার্তাগুলির অনুরূপ আউটপুট তৈরি করতে সম্পর্কিত অ্যাপ্লিকেশনটির একটি উদাহরণ এখানে দেওয়া হল। এই বিশেষ উদাহরণে, টাইমার 0 সেকেন্ডে পৌঁছে একবার চলে যাবে এবং টাইমার লাইনটি "প্রস্তুত!" ফ্রেজ।
#!/bin/bash
sek=60
echo "60 Seconds"
while ((sek--)); do
printf "One moment please: %d" "$sek"
sleep 1
printf "\r%b" "\033[2K"
done
echo "Ready!"
আর একটি বিকল্প dialog
হ'ল কমান্ড-লাইনে সরল সংলাপ তৈরি করার জন্য কমান্ড নিয়োগ করা । ডায়ালগটি টাইমার সময়কালের জন্য এবং লুপের সাথে আপডেট হওয়ার জন্য স্ক্রিনে থাকবে এবং এটি শেষ হওয়ার সাথে সাথে - টাইমারটি "নির্বিঘ্নে প্রস্তুত! প্রস্থান করার জন্য টিপুন" বার্তাটি নির্বিঘ্নে প্রতিস্থাপন করা হবে:
#!/bin/bash
sek=60
echo "60 Seconds"
while ((sek--)); do
echo "$sek" | dialog --progressbox "Please wait" 10 25
sleep 1
done
dialog --msgbox "Ready! Press <OK> to finish" 10 25
watch
কমান্ডটি দিয়ে এটি করার একটি উপায় থাকতে পারে , যদিও এটি ঠিক কীভাবে করবেন তা আমি নিশ্চিত নই।