Existe uma maneira de configurar o bash para sempre a saída da página?

5

Eu gostaria de configurar o bash para paginar a saída de todos os comandos. Essencialmente, quero que o bash se comporte como se cada comando que eu digitasse terminasse com '| Menos'. Isso é possível?

    
por Ben Williams 25.06.2009 / 22:21

2 respostas

8

Você pode fazer isso:

$ bind '"\C-j": "|less\C-m"'

Ou coloque isso no seu ~/.inputrc :

"\C-j": "|less\C-m"

Então, quando você quiser fazer ls -l|less , digite ls -l e pressione control-J em vez de <enter> .

Eu não recomendaria a troca de j e m no comando bind (ou no arquivo .inputrc). Toda vez que você pressiona <enter> você recebe |less adicionado, o que pode ser muito chato.

    
por 25.06.2009 / 23:09
1

Eu não tenho certeza se isso é possível, mas você pode definitivamente tornar mais fácil para si mesmo fazendo algo assim em seu .bashrc:

alias p='less'

ll |p torna-se uma listagem paginada.

EDIT: Como uma nota que isso ainda não vai funcionar para algo que está indo para STDERR. Você precisaria de algo como: errorcommand 2>&1 |p

    
por 25.06.2009 / 22:39