한 페이지에 맞지 않는 bash 명령 - 출력을 스크롤 가능하게 만듭니다.

한 페이지에 맞지 않는 bash 명령 - 출력을 스크롤 가능하게 만듭니다.

아마도 어딘가에서 답변을 받았을 것입니다. 그러나 검색 문구를 구성하는 것은 어렵습니다.

bash 터미널 창을 실행 중인데 일부 명령이 너무 커서 페이지에 맞지 않습니다(예: ps -A)

출력을 스크롤할 수 있도록 명령 출력을 페이지별로 표시하는 명령줄 매개변수/메소드가 어렴풋이 기억나지만 그것이 무엇인지는 기억나지 않습니다.... 포인터가 있습니까?

답변1

자주 사용하는 명령의 경우 일반적으로 function.bashrc화면보다 긴 경우 페이지 매김을 수행합니다.

귀하의 예와 같습니다 : (ps -A)

function ps { command ps "$@" |& less -F; }

이는 명령줄에 지정된 인수로 원래 명령을 호출한 다음 출력(stdout)을 파이프하는 ps함수로 대체됩니다.psps그리고파이프를 사용하는 stderr |&) into 는 less -F화면이 가득 찬 경우 일시 중지되지만 화면이 가득 찬 것보다 작으면 즉시 종료됩니다.

매우 편리하고 지금까지 작업한 모든 작업을 방해하지 않으며 정말 멋집니다!

자주 사용되는 옵션을 명령/함수에 추가할 수도 있습니다.

function nm { command nm --demangle "$@" |& less -F; }

nm이로 인해 항상 C++ 기호가 손상 됩니다 .그리고출력에 페이지를 매깁니다. 이야!

나는 뛰고있어데비안, 그래서 저는 이 apt-cache명령을 꽤 자주 사용합니다.찾다그리고보여주다주로. 이 기능을 사용하면 해당 특정 옵션에 페이지가 매겨집니다.찾다출력이 정렬되고 모든 것이 페이지로 매겨집니다.

function apt-cache { case  "$1" in "search") command apt-cache "$@" | sort | less -F;; *) command apt-cache "$@" | less -F;; esac; }

명령이 '검색'인 경우 출력을 정렬한 다음 로 페이지를 매깁니다 less -F. 그러나 명령이 다른 경우에는 정렬하지 않고 페이지를 매깁니다.

가끔 나는 함수가 있다는 사실을 잊어버리고 다음과 같은 작업을 수행합니다.

apt-cache search gcc | less

이 기능은 방해하지 않으며 모든 것이 예상대로 작동하며 어느 쪽이든 해를 끼치지 않습니다.

.bashrc또 다른 약간의 조정은 모든 시스템에서 동일하게 사용하므로 때로는 유틸리티가 설치되지 않아 해당 기능이 필요하지 않을 수도 있습니다. 나는 다음과 같이 조건부로 만듭니다.

which apt-cache &>/dev/null && function apt-cache { case  "$1" in "search") command apt-cache "$@" |& sort | less -F;; *) command apt-cache "$@" |& less -F;; esac; }

이는 which명령을 사용하여 프로그램이 사용 가능한지 확인하고, 그렇지 않은 경우 조용히 실패하고 기능 설치를 건너뜁니다. 타다!

답변2

일반적인 방법은 출력을 "less"로 파이프하는 것입니다.

ls -R / | less

q매뉴얼 페이지와 마찬가지로 종료하는 열쇠입니다.

명령이 stderr에 오류나 기타 출력을 생성할 수 있는 경우 이를 파이프에도 전달할 수 있습니다.

ls -R 2>&1 | less

bash가 있는 모든 머신에는 bash도 적어야 합니다. 오래된 Linux 시스템에서는 이 프로그램이, 하지만 한 번에 한 페이지씩만 수행됩니다.더 적은원하는 대로 스크롤할 수 있습니다.

답변3

출력을 'more'로 파이프하십시오.

output | more -d


Enter - > Scroll by line
Space - > Scroll by Page
q     - > Quit

RPM 기반 OS에서 테스트되었습니다.

관련 정보