පර්යන්තය සැබවින්ම ඉවත් කරන්නේ කෙසේද?


422

මම නිකුත් කල හැක clearවිධානයක් හෝ මාධ්ය Ctrl+ Lසිට ඉහළට මේ හුදෙක් මුර පෙර ප්රතිදානය වත්මන් උබුන්ටු පර්යන්තය ඉවත් කිරීමට, නමුත් ඔබ මූසිකය පොත දිග භාවිතා කරන්නේ නම් PgUPසහ PgDownයතුරු එය වත්මන් අණ පෙර අණ අවසන් ප්රතිදානය සහ ප්රතිදානය ආරම්භ කරන වෙනස හඳුනා අමාරුයි.

ටර්මිනලය සැබවින්ම ඉවත් කිරීමට ක්‍රමයක් තිබේද, එවිට මට පෙර විධාන ප්‍රති results ල නොපෙනේ.


11
Ctrl + L දෙවරක් ඔබන්න, එවිට ඔබට හිස් වනු ඇත!
පාණ්ඩ්‍යා

Answers:


484

ඔව්, ඔබ සොයන විධානය එයයි

reset

කිරීමට වෙනස්ව clear, හෝ Ctrl+ L, resetඇත්තටම සම්පූර්ණයෙන්ම නැවත විධානය ඇත පර්යන්තය , හුදෙක් තිරය ඉවත් කිරීම වෙනුවට. කෙසේ වෙතත්, එය කවචය (බැෂ්) නැවත ස්ථාපනය නොකරයි. එයින් අදහස් වන්නේ ඔබ තිරය හිස් කිරීමක් මෙන්, බාෂ්ගේ තත්වය පෙර මෙන් ම ය.

Alla වල්ලකොලූ අදහස් දැක්වීමේදී සඳහන් කරන පරිදි, මෙම විධානය එකම දේ වඩාත් ඉක්මණින් කළ යුතුය:

tput reset

අනෙක් පිළිතුරු වලින්:

  • ඔබ සැකසිය හැක , යතුරුපුවරු කෙටිමං කිරීමට resetපරිදි, පර්යන්තය විසින් පැහැදිලි towolf .

  • ඔයා තමයි ධාවනය නම් කුබුන්ටු , සහ ඔබගේ පර්යන්තය Konsole වන අතර, ඔබ යන්න අවශ්ය සංස්කරණය කරන්න → පැහැදිලි ඉතිහාසය පටන් resetඑහි එකම විදිහට වැඩ කරන්නේ නැහැ UncleZeiv සටහන් ලෙස .


9
බොහෝ පරිශීලකයින්ට එය වැදගත් නොවේ, නමුත් හැසිරීම resetපර්යන්තය මත රඳා පවතී.
cthom06

2
මා පහර දුන් විට අනුචලනය දිගේ යමක් "ඉහළට" ඉතිරිව ඇති බව පුද්ගලිකව මට කමක් නැත ^L. මට එය නොපෙනේ (මට අවශ්‍ය එයයි!), මට එය දැනෙන්නේ නැත, හදිසියේම මට එහි තිබූ දේ නැවත ලබා දීමට අවශ්‍ය නම් - ගැටළුවක් නැත. resetඊට හාත්පසින්ම වෙනස් මෙවලමක් - ටර්මිනලයේ යම් දෙයක් වැරදී ඇති විට මම එය භාවිතා කරමි - අමුතු ගැලවීමේ අනුපිළිවෙල අහම්බෙන් දර්ශනය මුළුමනින්ම විනාශ කළ විට.
ulidtko

17
idulidtko: ඔබ ටොන් ගණනක නිමැවුම් සමඟ අඛණ්ඩව වැඩසටහන් සැසි ධාවනය කරන විට එය වැදගත් වේ. ඔබ පසුපසට අනුචලනය කරන්නේ නම්, කුමන ක්‍රියාවලියක් මුද්‍රණය කර ඇත්ද යන්න පිළිබඳව ව්‍යාකූල වීම පහසුය. මෙම අවස්ථා වලදී වඩාත් නවීන විසඳුම් භාවිතා කළ හැකි බව මම හොඳින් දනිමි, කෙසේ වෙතත් එය ඉක්මන් හා අපිරිසිදු නිදොස් කිරීමේ සැසි වලදී බොහෝ විට සිදුවන අවස්ථාවකි.
UncleZeiv

9
ද තිබෙන tput resetදෘෂ්යමානව එකම දෙයක් කරන්නේ, නමුත් ක්ෂණිකව සම්පූර්ණ (ෙහයින්ද, resetරේඛාවේදී reappears පෙර තත්පර 2 ක් පමණ දක්වා ගත හැක).
පොන්කඩූඩ්ල්

1
මෙය මගේ putty.exe කවුළුව ප්‍රමාණය වෙනස් කිරීමට හේතු වේ, එය සිදු නොවී ඉවත් කිරීම සතුටක් වනු ඇත.
void.pointer

123

මම මෙය ටික වේලාවක් සොයමින් සිටි අතර මෙය පළ කළ බුද්ධිමතෙකු මට හමු විය:

clear && printf '\e[3J'

සම්පූර්ණ තිර බෆරය ඉතා පිරිසිදුයි. OS X මත ක්‍රියා කරන අතර එය බොහෝ * නික්ස් පර්යන්තවල හොඳින් ක්‍රියාත්මක වන බව විශ්වාස කරයි.

කුතුහලය දනවන කරුණ '\e[3J'නම් , මෙම කොටස ටර්මිනල් ගැලවීමේ විධානයකි.


3
හ්ම්, xterm, Konsole සහ Linux VT වල ක්‍රියා කරයි, නමුත් එය gnome-terminal හි නොමැත ...
Ruslan

9
ස්තූතියි, එය ඉතා ප්‍රයෝජනවත්! එයින් printf '\e[3J'අදහස් කරන්නේ කුමක්ද? එය බෆරය පිරිසිදු කරන්නේ කෙසේද?
පිලිප් ස්පිරිඩොනොව්

2
නියමයි! මැක් මත බැෂ්-ස්ටයිල් යළි පිහිටුවීමට කැමති අය සඳහා: nano ~/.bashrcසහ එකතු කරන්නalias reset="clear && printf '\e[3J'"
මයිකල් ඩීල්

4
අන්වර්ථකරණයෙන් ප්‍රවේශම් වන්න reset- එය පර්යන්තය ඉවත් කිරීමට වඩා වැඩි යමක් කරයි. උදාහරණයක් ලෙස, ඔබ අහඹු ලෙස කුණු කසළ සහිත ද්විමය ගොනුවක් අග්‍රය දූෂණය කරන මුද්‍රණය කරන්නේ නම් (උදා: ටයිප් කළ අක්ෂර ප්‍රතිරාවය කිරීම අක්‍රීය කරයි), resetසාමාන්‍යයෙන් එය නිවැරදි කළ හැකිය. \overrideඅන්වර්ථ-සෙවනැලි විධානයක් කරන්නේ කෙසේදැයි ඔබ දන්නා තාක් කල් අන්වර්ථකරණය හොඳයි .
RubyT TuesdayDONO

4
වින්ඩර්ස් හරහා සමහර එස්එස්එච් වෙත ප්‍රවේශ වන විට පුට්ටි අනුචලනය ඉවත් කිරීමට ක්‍රියා කරන එකම පිළිතුර මෙයයි.
ධූපින්

46

සංස්කරණය → යතුරුපුවරු කෙටිමං වෙත යාමෙන් ඔබට gnome-terminal හි කෙටිමඟක් පැවරිය හැකිය . මම Shift+ Ctrl+ Alt+ භාවිතා කරමි C.

කෙටිමඟ නැවත සකසන්න


+1. මම සෑම විටම මෙනුබාර් සඟවා ඇත; ඒ නිසා වසර ගණනාවක් තිස්සේ ග්නෝම් භාවිතා කළත් මම මේ ගැන සොයා බැලීමට සිතුවේ නැහැ. ස්තූතියි :-)
ස්ටෙෆානෝ පලසෝ

4
“යළි පිහිටුවීම” මා වෙනුවෙන් කිසිවක් නොකරන අතර “යළි පිහිටුවන්න සහ හිස් කරන්න” සියල්ල ඉවත් කළද විමසුම නැවත පෙන්වන්නේ නැත. මෙම මෙනු ඇතුළත් කිරීම් කිසිවක් ටර්මිනලයක සිට “යළි පිහිටුවීම” විධානය මෙන් ක්‍රියා නොකරයි.
හිබු 57

@ Hibou57 පැවසූ පරිදි, "යළි පිහිටුවීම" සඳහා මගේ යතුරුපුවරු කෙටිමඟ කිසිවක් නොකරන බව පෙනේ. මෙම ක්‍රියාකාරීත්වය 14.04 දී කැඩී තිබේද?
මයිකල් මාටින්-ස්මකර්

“මෙම ක්‍රියාකාරීත්වය 14.04 දී බිඳී තිබේද?”: මෙය 12.04 ට සමාන වේ.
හිබු 57

1
Ib Hibou57 "යළි පිහිටුවන්න සහ ඉවත් කරන්න" විමසුම නැවත දර්ශනය වනු ඇතැයි අපේක්ෂා නොකෙරේ, නමුත් ඔබ පසුව Enter යතුර ඔබන්න නම් එය නැවත විමසුම කළ යුතුය. එය ඔබට ප්‍රයෝජනවත් වේද?
දොන් හැච්

23

මගේ පිළිතුර ස්ටෝක් ඕවර් ප්‍රවාහයෙන් හරස් කිරීම .

හුදෙක් නව පේළි එකතු කරනවා වෙනුවට පැහැදිලි තිරයක් කිරීමට පහත විධානය භාවිතා කරන්න ...

printf "\033c"

ඔව්, එය bash විමසුමේ 'printf' ය.

අන්වර්ථ නාමයක් අර්ථ දැක්වීමට ඔබට අවශ්‍ය වනු ඇත ...

alias cls='printf "\033c"'

පැහැදිලි කිරීම

\033 == \x1B == 27 == ESC

එබැවින් මෙය <ESC>cටර්මිනලය නැවත සැකසීම සඳහා VT100 ගැලවීමේ කේතය වේ. ටර්මිනල් පැනීමේ කේත පිළිබඳ තවත් තොරතුරු මෙන්න .

සංස්කරණය කරන්න

මෙන්න එය කළ හැකි තවත් ක්‍රම කිහිපයක් ...

printf "\ec" #\e is ESC in bash
echo -en "\ec" #thanks @Jonathon Reinhart.
# -e    Enable interpretation of of backslash escapes
# -n    Do not output a new line

කේ.ඩී.ඊ.

ඉහත සඳහන් KDE කොන්සෝලය මත ක්‍රියා නොකරයි (කොන්සෝල් ලෙස හැඳින්වේ) නමුත් බලාපොරොත්තුවක් ඇත! තිරය ​​සහ අනුචලන පසුපස බෆරය ඉවත් කිරීමට පහත දැක්වෙන විධානයන් භාවිතා කරන්න ...

clear && echo -en "\e[3J"

නැතහොත් KDE හි පහත දැක්වෙන අන්වර්ථය භාවිතා කරන්න ...

alias cls='clear && echo -en "\e[3J"'

මට මෙතැනින් අනුචලන-ආපසු නිෂ්කාශන විධානය ලැබුණි .


මෙය ඉතා ස්තූතියි
alicanerdogan

18

මෙම විධානය ක්‍රියාත්මක කරන්න:

reset

මෙය නව පර්යන්තයක් දියත් කිරීමට සමාන බලපෑමක් ඇති කරයි.


6
පුට්ටි භාවිතා කරන විට, ධාවනය කිරීමෙන් පසුව reset, මට තවමත් ඉහළට අනුචලනය කර පෙර දේවල් දැක ගත හැකිය. මෙය පුට්ටිට වඩා ප්‍රශ්නයක්ද reset?
ස්විෂ්

ishvish - එය හුදෙක් ක්‍රියාත්මක කිරීමේ ප්‍රශ්නයක් හෝ තීරණයක් පමණි.
belacqua

gjgbelacqua, ඩීල් :)
ස්විෂ්

MAC OS පර්යන්තය සමඟ වැඩ කර ඇත
Bira

2
Ira බිරා නැත, මැකෝස් reset10.14 මොජාවේ හි අනුචලනය ඉවත් නොකරයි. ඔබට seq 100; resetතවමත් එහි අනුචලනය බැලීමට උත්සාහ කළ හැකිය. මැකෝස් පර්යන්තයේ, Cmd+Kතිරය ​​සහ අනුචලනය ඉවත් කළ හැකිය.
ජොනී වොන්

8

මගේ ප්‍රියතමය printf "\ec". මෙය ද විය හැකි printf "\033c"හෝ printf "\x1bc". එය ටර්මිනල් ප්‍රතිදානය සඳහා තිරය සහ බෆරය ආශ්චර්යමත් ලෙස ඉවත් කරන ඇන්සි ගැලවීමේ අනුක්‍රමයකි (මා එහි වැඩ කර ඇති බොහෝ සම්මත පර්යන්ත සඳහා පෙනේ - එය උබුන්ටු වැනි ග්නෝම්-ටර්මිනල්, ටර්මිනේටර්, එක්ස්ටර්ම් වැනි වැඩ කරන බව මම දනිමි. ලිනක්ස්)

මෙය ලිනක්ස් මින්ට් සහ උබුන්ටු 14.04 හි ක්‍රියාත්මක වන බව මම දනිමි, එබැවින් මිනිසුන් එකතු කිරීම හා සූදානම් කිරීම වැනි දේ මම නොදනිමි clear && echo -ne "\033c. printf "\ec"සෑම විටම මා වෙනුවෙන් වැඩ කර ඇත.

මීට අමතරව, මගේ තුළ .bashrcමට මේ වගේ බැඳීමක් තිබේ:

bind -x '"\C-t": printf "\ec"';

දැන් මම ctrltහැම වෙලාවෙම තද කරනවා.


වින්ඩෝස් යතුර භාවිතයෙන් සිතියමක් නිර්මාණය කරන්නේ කෙසේදැයි ඔබ දන්නවාද? මෙම ස්නිපටය ඇත්තෙන්ම විශිෂ්ටයි, හරියටම මැක් මත කමාන්ඩ්-කේ මෙන් ක්‍රියා කරයි. ඔබට ස්තුතියි.
නිලොක්

IlNiloct ඔබට ටර්මිනලය එයට සහය දක්වයිදැයි බලන්න xev( xevx- සැසියක් තුළ ටර්මිනලයක් ටයිප් කරන්න ). මට කිව හැකි දෙයින්, urxvt එයට සහාය නොදක්වයි; මම සුළු වශයෙන් උත්සාහ නොකළද, එයට සහාය නොදක්වන බව මට විශ්වාසයි. Xterm හෝ gnome-terminal මේ සඳහා සහාය වනු ඇතැයි මම සැක කරමි. එය අන්සි-පැන යාම සමඟ උපක්‍රමශීලී ය. ප්‍රමාද වී පිළිතුරු දීම ගැන සතුටු වන්න.
dylnmc

හරි @dylnmc, මම එය අගය කරනවා. අදහස් දැක්වීමට ස්තූතියි.
නිලොක්

5

හොඳයි, එය සැබවින්ම රඳා පවතී, ඔබ Konsoleඋදාහරණයක් ලෙස භාවිතා resetකරන්නේ නම් පළමු පේළිය පසුකර යාම පවා වළක්වන්නේ නැත. එවැනි අවස්ථාවකදී ඔබ භාවිතා කරන විශේෂිත පර්යන්තයේ යම් අංගයක් භාවිතා කිරීමට සිදුවේ. මක්නිසාද යත් Konsole, එය ය Edit > Clear History.


3

කුබුන්ටු සමඟ පහත සඳහන් දෑ බෙහෙවින් සාර්ථක බව මට පෙනී ගියේය:

alias clc="echo -en '\033c\033[3J'"

ඔබට clsවින්ඩෝස් සම්ප්‍රදාය සමඟ කටයුතු කිරීමට, මැට්ලැබ් අනුවාදය භාවිතා කිරීමට clcහෝ ඔබේම එකක් භාවිතා කළ හැකිය. වාසනාව!


2

විකල්පයක් ලෙස reset, ඔබට කළ හැකිය echo -e "\033c", නැතහොත් ඔබ තුළ තිබිය හැකිය.bashrc , වගේ දෙයක්alias cls="echo -ne '\033c'"

යුනික්ස් / ලිනක්ස් ස්ටැක්එක්ස්චේන්ජ් හි මේ පිළිබඳව නූල් එකක් ඇත: පර්යන්තය සම්පූර්ණයෙන්ම ඉවත් කරන්නේ කෙසේද? (unix.stackexchange.com) මෙන්ම සුපර් යූසර් : යතුරුපුවරු කෙටිමං (superuser.com) භාවිතයෙන් ටර්මිනලය හිස් කරන්න .


2

@ Hibou57 පිළිතුරට තවත් විකල්පයක්:

# The Octal Way
alias clear="echo -e '\033c\c'"

හෝ

# The Hex Way
alias clear="echo -e '\x1b\c'"

මූලික වශයෙන් මෙය හරියටම එකම බලපෑමක් ඇති කරයි, එය ^[අක්‍ෂරය මුද්‍රණය කරනු ඇත (එය ඔබේ පර්යන්තය ඉවත් කරයි) සහ පසුපස නව රේඛාව ප්‍රතිදානය නොකරයි.


සුළු නිවැරදි කිරීමක්: එය මුද්රණය කරයි ^[චරිතය (ESC), විසින් අනුගමනය එම cචරිතය, හුදෙක් නොවන ^[චරිතයක් පමණක් ය. ඒකාබද්ධව, මෙම ප්‍රමාණය "RIS" පර්යන්ත කේතයට වන අතර එය නැවත සැකසීමට හේතු වේ. වැඩි විස්තර: xfree86.org/4.8.0/ctlseqs.html
jwd


1

යුනික්ස් හි ඔබට ටර්මිනල් තිරය ඉවත් කළ හැකි සියලු ක්‍රම මෙන්න:

clear               # only clear visible screen
clear && clear      # clear buffer as well
tput clear          # same as clear but by sending escape seq
reset               # clear + reset internal terminal state + 1sec delay
tput reset          # same as reset but without 1sec delay
stty sane           # don't clear screen but reset some terminal options
echo -e "\033c"     # same as tput reset but hardcoded escape seq
printf "\033c"      # same as tput reset but hardcoded escape seq
setterm -reset      # same as tput reset, setterm has friendlier commands
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.