Provavelmente foi respondido em algum lugar, mas é difícil enquadrar a frase de pesquisa.
Estou executando uma janela de terminal bash e alguns comandos são grandes demais para caber na página (por exemplo ps -A
)
Lembro-me vagamente de um parâmetro/método de linha de comando que mostra a saída do comando página por página para que eu possa rolar pela saída, mas não consigo lembrar o que é... alguma indicação?
Responder1
Para comandos que uso com frequência, geralmente configuro um function
em meu.bashrcpara fazê-los paginar se forem maiores que uma tela.
Como seu exemplo: (ps -A)
function ps { command ps "$@" |& less -F; }
Isso é substituído ps
por uma função chamada ps
, que chama o ps
comando original com quaisquer argumentos fornecidos na linha de comando e, em seguida, canaliza a saída (stdoutestderr, usando o |&
pipe) into less -F
, que pausa se houver mais de uma tela cheia, mas sai imediatamente se houver menos de uma tela cheia.
MUITO prático, não interfere em nada que trabalhei até agora e é muito legal!
Você também pode adicionar opções frequentemente usadas aos comandos/funções:
function nm { command nm --demangle "$@" |& less -F; }
Isso nm
sempre desmonta os símbolos C++. Epagina a saída. Yay!
Estou correndoDebian, então eu uso o apt-cache
comando com bastante frequência,procuraremostrarmajoritariamente. Esta função faz com que essas opções específicas sejam paginadas,procurara saída é classificada e tudo pagina:
function apt-cache { case "$1" in "search") command apt-cache "$@" | sort | less -F;; *) command apt-cache "$@" | less -F;; esac; }
Se o comando for 'pesquisar', classifique a saída e paginate com less -F
, mas se o comando for qualquer outra coisa, apenas paginate, sem classificar.
Ocasionalmente, esqueço que tenho as funções e faço algo como:
apt-cache search gcc | less
A função não interfere, tudo funciona conforme o esperado, sem prejuízo de qualquer maneira.
Outro pequeno ajuste, eu uso o mesmo .bashrc
em todos os meus sistemas, então às vezes um utilitário pode não estar instalado, então não há necessidade da função. Eu os faço condicionais assim:
which apt-cache &>/dev/null && function apt-cache { case "$1" in "search") command apt-cache "$@" |& sort | less -F;; *) command apt-cache "$@" |& less -F;; esac; }
Isso apenas usa o which
comando para determinar se um programa está disponível; se não estiver, ele falha silenciosamente e ignora a instalação da função. Taa Daa!
Responder2
O método normal é canalizar a saída para "menos".
ls -R / | less
qé a chave para sair, assim como uma página de manual.
Se o comando puder produzir erros ou outra saída para stderr, você também pode direcioná-lo para o canal.
ls -R 2>&1 | less
Qualquer máquina que tenha bash também deveria ter menos. Em máquinas Linux antigas o programa eramais, mas isso faz apenas uma página por vez,menospermitirá que você role como desejar.
Responder3
Canalize a saída para 'mais'
output | more -d
Enter - > Scroll by line
Space - > Scroll by Page
q - > Quit
Testado em sistema operacional baseado em rpm.