আপনার এই লাইনগুলি যুক্ত করুন .bashrc
:
prompt_on_top() {
tput cup 0 0
tput el
tput el1
}
pre_cmd() {
if [ "$BASH_COMMAND" = "$PROMPT_COMMAND" ] || [ -n "$COMP_LINE" ]; then
return
fi
printf "\33[2J"
}
PROMPT_COMMAND="prompt_on_top"
trap 'pre_cmd' DEBUG
bash
আছে PROMPT_COMMAND , যা কমান্ড রাখা সামনে মৃত্যুদন্ড কার্যকর করা হবে bash
প্রদর্শনী প্রম্পট। এখানে আমরা এটি ফাংশনে সেট করেছি prompt_on_top
, যা স্ক্রিনের শীর্ষে কার্সার সেট করতে টিপুট ব্যবহার করে ।
bash
এছাড়াও, কোনো কমান্ড নির্বাহ ব্যবহার করার পূর্বে কমান্ড নির্বাহ করার জন্য একটি উপায় আছে ফাঁদ হ্যান্ডেল সংকেত DEBUG
। এখানে আমরা এটি ফাংশনে সেট করেছি pre_cmd
, যা পুরাতন স্ক্রিন সাফ করবে, এবং যদি আমরা সমাপ্তি ( COMP_LINE খালি নয়) বা ইন-কমান্ড চালাও তবে কিছুই না করে BASH_PROMPT
।
এই পদ্ধতির একটি সীমাবদ্ধতা আছে, যদি কমান্ড আউটপুট কোনও স্ক্রিনে খুব দীর্ঘ হয় তবে আউটপুটটি prompt_on_top
ক্রিয়া দ্বারা ওভাররাইড হবে । এই ক্ষেত্রে, পুরো আউটপুটটি পড়তে আপনাকে পেজারে আউটপুটটি পাইপ করা দরকার।
cat
একটি ফাইল, এটি বিপরীত ক্রম হবে?