답변:
예, 당신이 찾고있는 명령은
reset
대조적으로 clear
, 또는 Ctrl+ L, reset
실제로 완전하게 재 초기화 할 단말 , 대신 화면의 클리어. 그러나 쉘 (bash)을 다시 인스턴스화하지는 않습니다. 이것은 단지 화면을 지우는 것처럼 bash의 상태 가 이전과 동일 하다는 것을 의미합니다 .
@Wallacoloo가 주석에서 언급 했듯이이 명령은 더 빠르게 동일한 작업을 수행해야합니다.
tput reset
다른 답변에서 :
당신이 실행하는 경우 쿠분투를 하고 터미널 Konsole을, 당신은에 갈 필요가 편집 → 기록 지우기 때문에 reset
,이 같은 방식으로 작동하지 않습니다 UncleZeiv 노트로 .
reset
터미널에 따라 다릅니다.
^L
. 나는 그것을 보지 못하고 (그것이 내가 원하는 것입니다!), 그것을 느끼지 않으며, 갑자기 나는 거기에있는 것을 복원 해야 합니다-아무런 문제가 없습니다. reset
대조적으로, 이스케이프 시퀀스가 실수로 디스플레이를 완전히 망쳐 놓았을 때처럼 터미널에 문제가있을 때 사용하겠습니다.
tput reset
가시 같은 일을하는,하지만 (반면 즉시 완료 reset
프롬프트가 다시 나타납니다 전에 약 2 초 정도 걸릴 수 있습니다.)
나는 이것을 잠시 동안 찾고 있었고 이것을 게시 한 천재를 발견했다.
clear && printf '\e[3J'
전체 화면 버퍼를 지 웁니다. 매우 깨끗합니다. OS X에서 작동하며 대부분의 * nix 터미널에서 제대로 작동한다고 생각합니다.
궁금한 점은이 부분 '\e[3J'
은 터미널 이스케이프 명령입니다.
reset
.
printf '\e[3J'
뜻입니까? 버퍼를 어떻게 청소합니까?
reset
-터미널을 지우는 것 이상의 역할을합니다. 예를 들어 실수로 터미널을 손상시키는 임의의 가비지가있는 이진 파일을 인쇄하는 경우 (예 : 입력 한 문자의 에코가 비활성화 됨) reset
일반적으로 문제를 해결할 수 있습니다. 물론 \override
별칭 그림자 명령 에 대한 방법을 알고 있다면 별칭이 좋습니다.
편집 → 키보드 단축키 로 이동하여 그놈 터미널에서 단축키를 지정할 수도 있습니다 . 나는 Shift+ Ctrl+ Alt+를 사용 C합니다.
stackoverflow 에서 내 답변을 교차 게시하십시오 .
다음 명령을 사용하여 단순히 새 줄을 추가하는 대신 명확한 화면을 만드십시오 ...
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 콘솔 (Konsole)에서 작동하지 않지만 희망이 있습니다! 다음 명령 시퀀스를 사용하여 화면과 스크롤 백 버퍼를 지 웁니다.
clear && echo -en "\e[3J"
또는 KDE에서 다음 별칭을 사용하십시오.
alias cls='clear && echo -en "\e[3J"'
여기서 스크롤 백 지우기 명령을 받았습니다 .
이 명령을 실행하십시오 :
reset
이것은 새로운 터미널을 시작하는 것과 같은 효과가 있습니다.
reset
여전히 위로 스크롤하여 이전 항목을 볼 수 있습니다. 이것이 PuTTY가 아닌 문제 reset
입니까?
reset
macOS 10.14 Mojave에서 스크롤 백을 지우지 않습니다. seq 100; reset
여전히 스크롤 백을 보려고 할 수 있습니다. macOS 터미널에서 Cmd+K
화면과 스크롤 백을 지울 수 있습니다.
내가 가장 좋아하는 것은 printf "\ec"
입니다. 이것은 또한 할 수있다 printf "\033c"
또는 printf "\x1bc"
. 그것은 터미널 출력에 대한 화면과 버퍼를 기적적으로 지우는 ansi escape 시퀀스입니다. 리눅스)
나는 이것이 Linux Mint와 Ubuntu 14.04에서 작동한다는 것을 알고 있으므로 사람들이 왜 이런 것들을 추가하고 미리 준비하는지 모르겠습니다 clear && echo -ne "\033c
. printf "\ec"
항상 나를 위해 일했습니다.
또한 내 .bashrc
경우 다음과 같은 바인딩이 있습니다.
bind -x '"\C-t": printf "\ec"';
이제는 ctrlt항상 눌렀 습니다.
xev
( xev
x 세션 안에 터미널을 입력하십시오 ). 내가 알 수 있듯이 urxvt는이를 지원하지 않습니다. tty에서 시도하지 않았지만 지원되지 않을 것이라고 확신합니다. 또한 xterm 또는 gnome-terminal이이를 지원할 것이라고 의심합니다. anis-escape에는 까다 롭습니다. 답장을 보내 주셔서 감사합니다.
또는에 다음과 같은 reset
작업을 수행 echo -e "\033c"
하거나 할 수 있습니다..bashrc
alias cls="echo -ne '\033c'"
UNIX / Linux StackExchange에는 다음과 같은 스레드가 있습니다. 터미널을 완전히 지우는 방법? (unix.stackexchange.com) 및 SuperUser : 키보드 단축키 (superuser.com)를 사용하여 터미널을 지 웁니다 .
@ 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
yakuake 또는 Konsole을 사용하는 경우 Ctrl+ Shift+를 사용해보십시오 K.