터미널이 shift-pageup / shift-pagedown 대신 pageup / pagedown을 사용하도록 하시겠습니까? 구이 크 등에서 페이지

그놈 터미널, 커맨드 라인, 터미네이터 및 구이 크 등에서 페이지 위로 이동하기 위해 shift-pgup이 상당히 지쳤습니다.

이러한 앱이 페이지 업 및 페이지 다운 키를 사용하여 쉽게 페이징 할 수있는 방법은 무엇입니까?



답변

PgUp / PgDown이 명령 줄 응용 프로그램으로 전송되지 않아 일부는 사용할 수 없게되므로 이것이 불가능합니다. 이것은 좋은 시절의 유닉스 기능입니다.

보다 사용자 친화적 인 스크롤을 원하면 less명령을 사용하는 것이 좋습니다 . 이 방법으로 사용됩니다 :

command-with-lot-of-output | less

less원래 명령의 출력으로 명령 이 시작됩니다 . ( 다른 프로그램으로의 출력 파이프에 대한 자세한 내용은 http://www.dsj.net/compedge/shellbasics1.html에서 확인할 수 있습니다 . )

화살표 나 PgUp / PgDown을 사용하여 탐색 할 수 있습니다. 편의를 위해 검색 등을 제공합니다 (자세한 내용 참조 man less). 당신은 종료 할 수 있습니다 less단지 쳐서 q키를 누릅니다.


답변

다음 xterm과 같이 키 바인딩 ( ~/.Xresources)을 사용 하고 조정하십시오 .

xterm*VT100.Translations: #override \n\
    <KeyPress>Prior:scroll-back(1,page)\n\
    <KeyPress>Next:scroll-forw(1,page)\n\

gnome-terminal PageUp / PageDown은 터미널 내의 응용 프로그램을위한 것이며 사용하면 혼란 스럽습니다 …


답변

Konsole을가 사용하도록 구성 할 수있는 관련 옵션을 제공 KDE를위한 터미널 에뮬레이터Page UpPage Down직접 페이징에 대한 키를. Konsole만큼 쉽게 사용자 정의 할 수있는 다른 터미널 에뮬레이터는 없습니다.

페이징을 지시하는 방법

Konsole에서 다음 단계를 수행하십시오.

  1. 메뉴 표시 줄에서 “설정”으로 이동하여 “현재 프로파일 구성 …”(Kubuntu 12.04) 또는 “현재 프로파일 편집 …”(Kubuntu 16.04)을 클릭하면 창이 나타납니다.

  2. 미리 정의 된 키 바인딩 목록이있는 “키 바인딩”이라는 섹션이있는 “입력”탭 (Kubuntu 12.04) 또는 “키보드”탭 (Kubuntu 16.04)을 클릭하십시오.

    Konsole의 키 바인딩

  3. “Default (XFree 4)”를 선택하고 “Edit …”버튼을 클릭하면 다른 창이 나타납니다.

  4. 아래로 스크롤 PgDown-Shift-AnyModifier하여 output 키 조합 을 찾으십시오 \E[6~. 이 출력의 이름을로 바꿉니다 ScrollPageDown.

  5. 아래로 스크롤 PgUp-Shift-AnyModifier하여 output 키 조합 을 찾으십시오 \E[5~. 이 출력의 이름을로 바꿉니다 ScrollPageUp.

  6. “확인”버튼을 클릭하여 창을 닫고 닫습니다.

출력 테스트 방법

3 단계에는 “키 영역”이 있으며 각 키 누름에 대한 출력을 확인합니다.

  • 텍스트 필드를 눌러 “입력”에 초점을 가져으로 클릭 Page Up하고 Page Down(한 번에 하나의) 키를.

  • 출력이 이름이 바뀐 것과 동일한 지 확인하십시오.

    Konsole의 키 바인딩 목록 및 테스트 영역

또는 간단한 스크립트를 작성하여 메시지를 루프로 에코합니다. 나는 다음과 같이 내 자신의 스크립트를 포함시켰다.

  • 다음 코드 줄을 복사하여 텍스트 편집기에 붙여 넣습니다.

    #!/bin/bash
    
    echo "Started script"
    echo "If no input, then loop"
    while true
    do {
        echo "Hello, world"
        echo "Wait 1 second to loop [q to quit]"
        read -t 1 -n 1 INPUT && echo
        if [ "$INPUT" == "q" ]
            then break
            else echo "UTC now: $(date -u +%H%M%S)"
        fi
        continue
    }
    done
    echo "Ended script"
    
  • 파일 ie로 저장하고 loop.sh터미널 ie에서 스크립트를 실행하십시오 bash loop.sh(실행 불가능).

  • 반향 된 메시지가보기 영역을 채우고 출력을 아래쪽으로 스크롤하기 시작할 때까지 기다리십시오.

  • 그런 다음을 눌러 Page UpPage Down키 스크롤 및보기 영역을 아래로 스크롤합니다.

Kubuntu 12.04에서 Konsole 2.8.5, KDE 4.8.5를 사용하여 테스트했습니다.

보너스 : 키 조합 및 출력

설명을위한 보너스 답변입니다. 다른 사람들이 아닌 왜이 키 조합을 편집해야하는지 궁금 할 것입니다. 나는 여러 유형의 키보드를 테스트하여 일찍 알아 냈습니다.

다음은 Konsole에서 “Test Area”를 사용하여 알아 낸 기본 키 조합 및 출력입니다.

기본 Page Up / Page Down 키 ( Fn키 Fn + PgUp / Fn + PgDn 키 를 눌러야하는 키보드 변형 포함 )의 경우 :

  • 키 조합 : PgDown-Shift-AnyModifier 출력 :\E[6~

  • 키 조합 : PgUp-Shift-AnyModifier 출력 :\E[5~

보조 Page Up / Page Down 키의 경우 ( ShiftShift + PgUp / Shift + PgDn 키 가 필요한 터미널의 기본 바로 가기 ) :

  • 키 조합 : PgDown+Shift-AppScreen 출력 :ScrollPageDown

  • 키 조합 : PgUp+Shift-AppScreen 출력 :ScrollPageUp

빼기 -및 더하기 +부호는 기본 키와 보조 키의 키워드마다 다릅니다. 이것들은 적어도 Konsole에서 키 누름이 동등한 문자로 변환되는 방식입니다.

그러나 해당 문자가 다른 터미널 에뮬레이터에서 실제로 이해되는지 확실하지 않습니다. 이것은 내가 아는 한 자신의 경험입니다.

평결

다양한 구성 파일 및 이러한 지루한 해결 방법을 다루고 싶지 않은 고급 사용자를 위해 Konsole은 쉽게 마음을 사로 잡습니다. Konsole과 KDE가 지난 4 년간 제공 한 이러한 수준의 사용자 지정에 대해서는 아무도 눈치 채지 못한 것 같습니다. 얼마나 이상합니다.


답변

다음 more과 같은 명령을 사용할 수 있습니다 .

command-with-lots-of-output  |  more

이렇게하면 명령 원본 출력이 더 많이 시작됩니다.

more‘space’로 탐색 할 수 있습니다. 스페이스를 누르면 명령 출력이 페이지로 표시됩니다.


답변