পুটি: কমান্ডলাইন থেকে পরিষ্কার স্ক্রোলব্যাক


27

আমি যখন পুটিটিওয়াইয়ের মাধ্যমে আমার সার্ভারের সাথে সংযোগ করি তখন আমি clearকমান্ডটি দিয়ে দৃশ্যমান স্ক্রিনটি সাফ করতে পারি ।

তবে পুরাতন জিনিসগুলি দেখতে আমি এখনও পিটিটিওয়ির জিইউআইতে পিছনের দিকে স্ক্রোল করতে পারি। আমি পিটিটিওয়ির ক্লিয়ার স্ক্রোলব্যাক বৈশিষ্ট্য সম্পর্কে সচেতন , তবে এর জন্য মাউস ক্লিক করা দরকার।

আমি ঠিক সেই একই "ক্লিয়ার স্ক্রোলব্যাক" অপারেশনটি করতে চাই, তবে কমান্ডলাইন থেকে।

এটা কি সম্ভব?

আমি এই সাইটটি পড়েছি , যা দেখে মনে হয়।

তবে আমার পরীক্ষাগুলি ব্যর্থ হয়েছে। এই ক্ষেত্রে:

printf '\033[3J'

আমার জন্য কিছুই করে না

আমি CSI 3 Jদ্বিতীয় লিঙ্কটির অর্থ বুঝতে পারি না , যদিও ...


আপনি পুটিটির কোন সংস্করণ ব্যবহার করছেন? পৃষ্ঠাটি ইঙ্গিত করে যে বৈশিষ্ট্যটি পিটিটিওয়াই 0.59 এবং তার উপরে কাজ করে। আমার পিটিটি 0.60 আছে এবং এটি আমার পক্ষে কাজ করে। মনে রাখবেন এটি কেবল স্ক্রোলব্যাক বাফারকে সাফ করে, এটি স্ক্রিনটি সাফ করে না। (যদি আমার কাছে কোনও স্ক্রোল বার থাকে আমি আসলে স্ক্রোল করতে পারি, তবে এই ক্রমটি ব্যবহার করুন, আমি লক্ষ্য করব যে স্ক্রোল বারটি অক্ষম হয়ে গেছে কারণ সেখানে স্ক্রোল করার জন্য হঠাৎ কিছুই পাওয়া যায় না But তবে বর্তমানে প্রদর্শিত স্ক্রিনটি স্থানে রয়েছে))
বাভিহহ

@ ববি_আহ: আপনাকে ধন্যবাদ - আমি বুঝতে পারি নি যে এটি বর্তমানে প্রদর্শিত পাঠ্যের উপর প্রভাব ফেলবে না। আমি দেখতে পাচ্ছি এটিও কাজ করছে। আমি চাই সম্পূর্ণ সমাধানটি clear && printf '\033[3J'। আপনি যদি উত্তর দেন তবে আমি তা গ্রহণ করব।
jwd

উত্তর:


32

CSI 3 Jক্রম স্ক্রলব্যাক বাফার পরিষ্কার পুটিং 0.59 যোগ করা হয়েছিল। ( এই বৈশিষ্ট্যের জন্য ইচ্ছার অনুরোধ পৃষ্ঠায় "ফিক্সড-ইন" লাইনটি দেখুন, বা পুটি পরিবর্তন পৃষ্ঠায় যান এবং অনুসন্ধান করুন CSI 3 J))

Jwd হিসাবে উল্লেখ করা হয়েছে, আপনি printf '\033[3J'এই ক্রমটি পুটিটিতে পাঠাতে একটি কমান্ড লাইনে প্রবেশ করতে পারেন । সচেতন থাকুন এটি কেবল স্ক্রোলব্যাক বাফারকে সাফ করে, এটি স্ক্রিনটি সাফ করে না। যদি আপনার কাছে কোনও স্ক্রোল বার থাকে তবে আপনি আসলে স্ক্রোল করতে পারেন, তবে এই ক্রমটি ব্যবহার করুন, আপনি স্ক্রোল বারটি অক্ষম হয়ে যাবেন কারণ হঠাৎ স্ক্রোল করার জন্য কিছুই নেই। তবে বর্তমানে প্রদর্শিত পর্দা স্থানে রয়েছে।

Jwd হিসাবে উল্লেখ করা হয়েছে, আপনি স্ক্রিন এবং স্ক্রোলব্যাক বাফার ব্যবহার করে উভয় সাফ করতে পারেন clear && printf '\033[3J'


এবং যারা নিয়ন্ত্রণ কোড সম্পর্কে কিছুটা হালকা পঠন সন্ধান করছেন তাদের জন্য: xfree86.org/4.8.0/ctlseqs.html (: এটি এক বছরের অধীনে রয়েছেCSI P s J
jwd

11

আপনি অভ্যস্ত থাকেন, তবে যেমন আমি ব্যবহার করার Ctrl+Lজন্য Reset terminalপুটিং সিস্টেম মেনুতে বিকল্প পাওয়া যায়, তাহলে আপনি এটি সহায়ক সক্রিয় করতে পেতে পারে Configuration -> Window -> Behavior -> "System menu appears on ALT-Space"

তারপরে আপনি যখন আঘাত করবেন তখন Alt+Spaceবিকল্পটি "Clear scrollback"ট্রিগার করে L(লোয়ারকেস; শিফট নেই)। সুতরাং, আপনার শেল ইতিহাসে কোনও উত্সাহী মরিং বা বিশৃঙ্খলা ছাড়াই এবং reset + clearমনোমুগ্ধকর-স্মৃতিচারণ সংমিশ্রণে পরিণত হয় ।Ctrl+LAlt+Space L


কাজ করে এবং মনে রাখা সহজ :)
ওয়াইর্মউড

খারাপ নয়, যদিও এফওয়াইআই: আপনি কোনও স্থানের সাথে একটি কমান্ড উপস্থাপন করে আপনার শেল ইতিহাসকে বিশৃঙ্খলা আটকাতে পারবেন।
jwd

6

একটি স্ক্রিপ্ট ফাইল তৈরি করুন এবং এটি একটি পাথ-অন্তর্ভুক্ত ফোল্ডারে রাখুন:

$cat > /usr/local/bin/cls
#!/bin/bash
clear
printf '\033[3J'

সংরক্ষণ এবং প্রস্থান করতে CTRL + d টিপুন

ফাইলে অনুমতি পরিবর্তন করুন:

chmod a+x /usr/local/bin/cls

এখন আপনি সেমিডি ক্লস ব্যবহার করতে পারেন :-)


1

আমার জন্য সমাধানটি ছিল '\ 033 \ 143' অক্ষরগুলি সঞ্চারিত করা:

printf, ( "\ 033 \ 143");

এটি টার্মিনাল স্ক্রিনটি সাফ করে এবং কার্সারটিকে উপরের বাম কোণে রেখে দেয়।


1
(1) প্রশ্নটি একটি কমান্ড-লাইন (অর্থাত্ শেল) কমান্ড চেয়েছে। এটি শেল কমান্ড নয়, এটি সি কোডের একটি লাইন; যেমন, এটি এই প্রশ্নের উত্তর নয়। (২) \143চরিত্রটি কী এবং যদি এই প্রশ্নের সাথে এটি কীভাবে সম্পর্কিত, আদর্শভাবে উদ্ধৃতি দিয়ে এই পোস্টটি কিছুটা কার্যকর হবে more
স্কট

1
যারা ভাবছেন তাদের জন্য এটি "সম্পূর্ণ রিসেট" এস্কেপ কোড ( ESC c) এর সাথে মিলে যায়। ASCII cএর মান রয়েছে 99যা অক্টাল 143। এটি কেবল এফওয়াইআই, স্ক্রোলব্যাক সাফ করার পাশাপাশি আরও কিছু কাজ করবে।
jwd

1

পুট্টিতে একটি বিকল্প রয়েছে যেখানে আপনি ডিফল্ট স্ক্রোল ব্যাক আচরণটি চেক করতে পারেন। "মুছে ফেলা টেক্সটটিকে স্ক্রোলব্যাকে চাপ দিন" বিকল্পটি কেবল চেক করুন।

পুট্টি সেটিংস চিত্র

এর পরে আপনি যখন স্পষ্ট কমান্ড জারি করবেন তখন এটি স্ক্রিনটি মুছে ফেলবে এবং স্ক্রোলটিতে আগের স্ক্রিনের সামগ্রীটি রাখবে না।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.