마지막 명령의 터미널 출력 만 삭제


13

이전 명령 기록을보기 위해 수백 줄의 출력을 스크롤하지 않고 마지막 명령의 출력을 지울 수 있습니까? 예를 들어, 실행 한 후에 ls는 더 이상 필요하지 않으므로 출력을 지우십시오.

편집하다:

이것은 평상시 clearctrl+L작업 이 아닙니다 . 아이디어는하지만, 부하 과거로 스크롤해야 할 필요없이 다시 이전 명령의 출력을 찾고 역사 비록 스크롤하는 것입니다 ls, 또는 cat, 또는 sudo apt-get install내가 정말하고 싶지 않다면 출력. 다음과 같이 보일 수 있습니다.

cat fileIWantToRemember
ls directoryIWantToForget
# some command that wipes the output of ls
# scroll back to see the output of cat immediately

출력을 지우거나 명령 기록에서 명령을 제거 하시겠습니까? 명령 기록을 수정하려면 이 스레드 가 찾고있는 것을 해결합니까?
ernie

터미널은 단지 텍스트 스트림을 표시하고 일부는 자체 내부 버퍼에 저장합니다. 명령 출력을 알거나 구별하는 방법이 없습니다. rxvt-unicode 터미널에는 이와 같은 것을 구현할 수있는 perl 인터프리터가 있습니다. 그러나 내가 아는 한 그것은 끝나지 않았습니다.
Keith

오래 전에이 기능이있는 Mac OS X에서 터미널 에뮬레이터를 사용했지만 더 이상 무엇을 호출했는지 기억할 수 없습니다. 그러나 무료는 아니었다. 그러나 빠른 Google 검색을 수행하는 동안 finalterm.org가 실행되어 해당 기능을 구현하려고하는 것처럼 보입니다. 그러나 "Final Term은 개발 중이며 안정적이거나 기능이 완전하지 않습니다!"라고 시도하지 않았습니다. 그래도 재미있어 보인다. Google 검색의 가치는 다음과 같습니다.terminal emulator output folding
rici

Final Term은 명령 (그리고 다른 많은 놀라운 것들)을 접을 수 있도록 크게 개발되었으며, 키보드 단축키가 있으면 문제가 해결됩니다. 나는 내가 미쳤다고 생각하기 시작했다 ...
nacnudus

1
정확한 답변은 아니지만 큰 파일의 내용을 보려면 'cat'대신 'less'명령을 사용하십시오. 또 다른 것은 어떤 명령이 콘솔에 출력으로 많은 수의 행을 제공하면 "$ the-command | less"를 작성하여 피할 수 있습니다.
Devasish

답변:


4

@rici 덕분에이 동작을 "폴딩"이라고 할 수 있습니다. 명령의 출력은 잊혀지지 않지만 다시 필요할 때까지 숨길 수 있습니다. 텍스트 편집기에서는 접기가 일반적이지만 터미널 에뮬레이터에서는 드문 것 같습니다.

Final Term 은 다른 많은 멋진 트릭을 접는 새로운 터미널 에뮬레이터입니다. 주의 : "최종 학기는 개발 중이며 안정적이거나 기능이 완전하지 않습니다!" 테스트 할 때 명령을 접을 수 있도록 크게 개발되었지만 충돌하지 않을 정도로 불안정합니다. 볼 하나.


0

분명한 명령을 찾고 있다고 생각합니다 ...

clear

"clear"는 마지막 명령을보기에서 지 웁니다. 필요한 경우 터미널에서 위로 스크롤하여 다시 볼 수 있습니다.


요점은 다른 것을 위해 당신의 역사를 살펴볼 때 그것을 지나갈 필요가 없다는 것입니다.
nacnudus

명령의 출력을 억제 하시겠습니까? 그렇다면, 이것은 당신을 도울 수 있습니다 : stackoverflow.com/questions/617182/…
phe0113

2
출력을보고 싶지 않으면 좋습니다. 처음으로 출력을보고 잊어 버리고 싶습니다. 그래서 내가 준 예제 ls에서 어떤 이유로 출력을 검사하고 싶지만 고양이의 출력을 찾기 위해 스크롤을 계속 넘길 필요가 없도록 제거하고 싶습니다. 분명히 나는 ​​고양이를 다시 할 수는 있지만 일련의 명령을 유지하고 싶다고 상상할 수 있으며, 모든 명령을 반복하지 않아도 좋습니다.
nacnudus

0

bash에서는 명령 Ctrl + L과 비슷한 바로 가기 를 눌러 화면을 지울 수 있습니다 clear. ( http://ss64.com/bash/syntax-keyboard.html )

또는 history | tail -3마지막 세 명령을 보는 데 사용할 수 있습니다 . ( http://www.howtogeek.com/howto/44997/how-to-use-bash-history-to-improve-your-command-line-productivity/ )


아래 @Justin에 대한 내 의견을 참조하십시오. 역할을 통해 다른 것을 찾을 때 요점을 스크롤하지 않아도됩니다. HISTCONTROL=ignorespace사실 이후에 사용할 수있는 두 번째 링크 와 같은 것이 좋습니다.
nacnudus

나는 당신이 달성하고자하는 것에 약간 빠져 있습니다. 또 다른 생각, 내가 사용한 많은 콘솔에서 일반적으로 화살표 키를 사용하여 bash에서 명령 기록을 탐색 할 수 있습니다.이 상황에 해당됩니까?
phe0113

편집 할 때 질문이 명확 해 집니까?
nacnudus

@nacnudus, 그렇습니다, 나는 지금 당신의 요점을 얻는다 :)
phe0113

0

기록에서 항목을 제거하려는 것처럼 들립니다. 이렇게하려면 먼저 ~ / .bashrc를 편집하고 다음을 추가하여 로그 아웃하지 않고 즉시 기록 기록을 활성화해야합니다.

shopt -s histappend; export PROMPT_COMMAND='history -a';'

그런 다음 항목을 삭제하려면 다음을 수행하십시오.

history -d offset여기서 offset은 삭제하려는 기록 항목입니다.

포럼 스레드를 기반으로합니다 .


히스토리 파일에서 삭제하는 것 같습니다. 거의 올바른 생각이지만 현재 터미널에서 지울 수 있습니까?
nacnudus
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.