Como rolar em um terminal usando o teclado?

149

Como posso rolar no bash usando apenas o teclado? Se não for possível no bash, existem outras conchas que suportam isso?

Kshitiz Sharma
fonte
34
Este não é um recurso do shell, é um recurso do emulador de terminal. Consulte Qual é a diferença exata entre um 'terminal', um 'shell', um 'tty' e um 'console'? Qual terminal você está usando?
Gilles
1
Eu acho que isso é muito amplo. Como mencionado, a rolagem é um recurso de emulador de terminal, não um recurso de shell. Na verdade, existem muitos emuladores de terminal, muitos dos quais implementam a rolagem de maneiras diferentes, ou de maneira nenhuma.
Anko
Sobre essa pontuação: Para uma pergunta específica sobre o Terminal GNOME, embora o questionador inicialmente também não tenha especificado o programa emulador de terminal, consulte unix.stackexchange.com/questions/460422 .
precisa saber é
Se alguém encontrar uma resposta para o Ubuntu na WSL, ficaria grato. As respostas atuais não ajudam.
Bram Vanroy 9/09

Respostas:

173

No "terminal" (não como um emulador gráfico gterm), Shift+ PageUpe Shift+ PageDownfuncionam.

isevcik
fonte
4
Shift + Uparrow e shift + Downarrow também funcionam para rolagem de linha por vez.
13133 Joe
3
para mim é ctrl-shift + uparrow
Hermann Ingjaldsson
31

Eu uso o terminal padrão no Ubuntu 14 (bash) e, para rolar por página, é Shift+ PageUpou Shift+ PageDownpara subir / descer uma página inteira.

Ctrl+ Shift+ Upou Ctrl+ Shift+ Downpara subir / descer linha.

max pleaner
fonte
17

Isso depende do emulador de terminal, não do shell que você está usando. Eu pessoalmente uso o GNU Screen . A partir da descrição:

Screen é um gerenciador de janelas em tela cheia que multiplexa um terminal físico entre vários processos, tipicamente shells interativos.

Você pode usar C-a [para entrar no modo de rolagem. A partir daqui, você pode rolar com o teclado e até copiar e colar. É possível sair do modo usando a Esctecla

jordanm
fonte
13

Teclado: Apple / Mac

Terminal / Emu: Terminal OSX

Shell: bash

fn + up_arrow: página acima
fn + down_arrow: página abaixo
cmd + up_arrow: alinhar
cmd + down_arrow: linha para baixo
zero_dia
fonte
2
Isso não acrescenta nada, parece ser específico do Mac (o que não seria ruim se marcado corretamente como tal) e não se aplica ao bash, mas ao emulador de terminal (o que seria útil se soubéssemos o que era).
Hildred 8/08/15
1
Eu não tenho nenhuma chave marcada fn, nem uma marcada cmd.
Anthon
3
@ Anthon Porque você não usa um mac? O OP nunca especificou o sistema operacional na pergunta.
DisplayName
para iTerm você pode usar fncom qualquer um shift, commandou optionmais as setas para a direcção
lacostenycoder
cmd + up é útil 👍
killscreenmike 10/03
4

Na maioria dos terminais que eu conhecia, você pode usar Shift+ PageUpe Shift+ DownDownpara rolar. Observe que alguns terminais não suportam rolagem ou usam um buffer de histórico muito limitado. No último caso, convém aumentar o limite, se for configurável.

Como alternativa, use um pager; por exemplo less,.

Philipp Claßen
fonte
4

No FreeBSD, você pode Scroll Lockalternar o modo de rolagem da tela. Pressione uma vez e use Para cima / Para baixo, PgUp / PgDown, Início / Fim para rolar. Pressione novamente para pular de volta e retomar a digitação.

mwfearnley
fonte
1

Se você usar o VirtureBoxVM no Mac OS, pressione SHIFT + fn + up_arrow (ou down_arrow) para rolar.

Huy Nguyễn
fonte
0

Existe uma outra maneira de mostrar tudo na gravação organizada do terminal até o último para qualquer comando "| less" e clicando no BOTÃO ESPAÇO, você pode rolar para baixo.

Exemplos

  • ps aux
  • ps aux | less

  • ps fax

  • ps fax | less
abdelmoumen drici
fonte
0

Linux no teclado Apple / Mac (pelo menos no MacBook Pro)

  • Page-up: shift + fn + Seta para cima
  • Page-down: shift + fn + Seta para baixo
  • Linha: shift + control + UpArrow
  • Line-down: shift + control + Seta para baixo
  • Página inicial: shift + fn + Seta para esquerda
  • Fim: shift + fn + Seta para a direita
GuzmanEscobar
fonte