utils:more
Diferenças
Aqui você vê as diferenças entre duas revisões dessa página.
| Ambos lados da revisão anteriorRevisão anteriorPróxima revisão | Revisão anterior | ||
| utils:more [2024/12/16 01:06] – [Noções básicas] conceito do prompt hrcerq | utils:more [2025/04/16 14:31] (atual) – edição externa 127.0.0.1 | ||
|---|---|---|---|
| Linha 1: | Linha 1: | ||
| ====== more ====== | ====== more ====== | ||
| - | **more** é um paginador | + | **more** é um paginador [[utils:glossario#t|de terminal]] :?:, originário |
| - | + | ||
| - | ===== História ===== | + | |
| - | + | ||
| - | O comando __more__ surgiu no 3.0BSD, por estudantes da universidade de Berkeley (originalmente criado por Daniel Halbert, em 1978). O comando foi gradualmente aprimorado ainda nesse sistema e depois se espalhou para outros UNIX, e depois até mesmo para sistemas não UNIX. | + | |
| - | + | ||
| - | O programa inicialmente tinha algumas limitações, | + | |
| - | ===== Padronização ===== | + | |
| - | + | ||
| - | O paginador __more__ é parte do padrão POSIX. Presente nas seguintes revisões: | + | |
| - | + | ||
| - | * [[https:// | + | |
| - | * [[https:// | + | |
| - | * [[https:// | + | |
| - | * [[https:// | + | |
| - | * [[https:// | + | |
| - | + | ||
| - | ===== Implementações ===== | + | |
| - | + | ||
| - | Em alguns sistemas tipo UNIX é comum que o paginador __more__ seja apenas uma referência à ferramenta __less__, com opções de compatibilidade com o padrão. Por este motivo, a lista de implementações abaixo fica bem restrita: | + | |
| - | + | ||
| - | * [[https:// | + | |
| - | * [[https:// | + | |
| - | + | ||
| - | __less__ (aqui usado como __more__): | + | |
| - | + | ||
| - | * [[https:// | + | |
| - | + | ||
| - | Nesse sentido, __less__ pode ser entendido como uma das implementações | + | |
| - | + | ||
| - | Cabe dizer também que no OpenBSD há uma página de manual dedicada ao uso de __less__ em modo de compatibilidade com __more__: | + | |
| - | + | ||
| - | * [[https:// | + | |
| - | + | ||
| - | Existem algumas diferenças quanto ao nível de aderência dessas implementações ao padrão POSIX, sendo o modo de compatibilidade | + | |
| - | + | ||
| - | Além dos sistemas aderentes (totalmente ou parcialmente) ao padrão POSIX, outros sistemas também possuem o paginador __more__, com algumas diferenças inevitáveis de implementação, | + | |
| - | + | ||
| - | * [[https:// | + | |
| - | * [[https:// | + | |
| - | * [[https:// | + | |
| ===== Noções básicas ===== | ===== Noções básicas ===== | ||
| Linha 60: | Linha 20: | ||
| É possível também acionar comandos internos do paginador __more__, para navegar de volta para o arquivo anterior, ou pular o arquivo atual e passar para o próximo da lista. | É possível também acionar comandos internos do paginador __more__, para navegar de volta para o arquivo anterior, ou pular o arquivo atual e passar para o próximo da lista. | ||
| + | |||
| + | * **Buffer** | ||
| + | |||
| + | Para paginar arquivos, __more__ usa um //buffer//, isto é, uma área de memória que vai guardar o texto do arquivo. O modo como __more__ gerencia esse //buffer// é um detalhe de implementação, | ||
| * **Capacidades do terminal** | * **Capacidades do terminal** | ||
| Linha 115: | Linha 79: | ||
| * **Redesenho** | * **Redesenho** | ||
| - | ... | + | Um redesenho da tela é o movimento de apagar o conteúdo atual da tela, e reescrever ou substituir por um texto diferente. |
| * **Rolagem** | * **Rolagem** | ||
| - | ... | + | Uma rolagem de tela é o movimento de adicionar linhas ao fim da página (quando está avançando) ou ao topo (quando está retrocedendo) e deslizar as demais linhas para cima (ao avançar) ou para baixo (ao retroceder). |
| * **Tags** | * **Tags** | ||
| + | |||
| + | //Tags// (do inglês, etiquetas) são uma maneira de rastrear definições (de funções, de tipos e outros objetos) dentro de um arquivo de código-fonte C ou Fortran (e opcionalmente de outras linguagens). Um arquivo específico guarda as referências dessas definições, | ||
| + | |||
| + | O arquivo em questão é gerado pelo utilitário [[utils: | ||
| + | ===== Iniciando e encerrando ===== | ||
| + | |||
| + | Iniciar o paginador __more__ é bastante simples. Basta acionar o programa, seguido (opcionalmente) pelos seus [[utils: | ||
| + | |||
| + | < | ||
| + | $ more arquivo1 arquivo2 arquivo3 | ||
| + | </ | ||
| + | |||
| + | Os arquivos não são abertos todos de uma vez. Apenas o primeiro deles estará visível na tela do terminal (ou seja, neste exemplo, apenas // | ||
| + | |||
| + | Antes de tratarmos sobre como navegar pelos arquivos abertos, precisamos falar sobre como encerrar o paginador. Basta digitar **q**, um //comando// que encerra o paginador, independente de você ter lido tudo ou não. Em qualquer ponto do texto, de qualquer um dos arquivos abertos para examinação, | ||
| + | |||
| + | Ao encerrar __more__, você notará que o texto continuará visível na tela. | ||
| + | |||
| + | <note tip> | ||
| + | A permanência do texto na tela pode ou não ser conveniente (costuma ser, quando o conteúdo do arquivo paginado é alguma informação útil para algum outro comando que deseja executar), mas caso não seja, você pode depois limpar a tela com __clear__ (ou **Ctrl** + **L**). | ||
| + | </ | ||
| + | |||
| + | ===== Comandos ===== | ||
| ... | ... | ||
| + | ===== Trocando de arquivos ===== | ||
| - | * **Terminal** | + | ... |
| + | |||
| + | ===== Texto formatado ===== | ||
| ... | ... | ||
| - | ===== Iniciando e encerrando | + | |
| + | ===== Pesquisa de texto ===== | ||
| ... | ... | ||
| + | |||
| + | ==== Expressões regulares ==== | ||
| + | |||
| + | ... | ||
| + | |||
| + | ===== Marcadores ===== | ||
| + | |||
| + | ... | ||
| + | |||
| + | ===== Passando para a edição ===== | ||
| + | |||
| + | ... | ||
| + | |||
| + | ===== História ===== | ||
| + | |||
| + | O comando __more__ surgiu no 3.0BSD, por estudantes da universidade de Berkeley (originalmente criado por Daniel Halbert, em 1978). O comando foi gradualmente aprimorado ainda nesse sistema e depois se espalhou para outros UNIX, e depois até mesmo para sistemas não UNIX. | ||
| + | |||
| + | O programa inicialmente tinha algumas limitações, | ||
| + | ===== Padronização ===== | ||
| + | |||
| + | O paginador __more__ é parte do padrão POSIX. Presente nas seguintes revisões: | ||
| + | |||
| + | * [[https:// | ||
| + | * [[https:// | ||
| + | * [[https:// | ||
| + | * [[https:// | ||
| + | * [[https:// | ||
| + | |||
| + | ===== Implementações ===== | ||
| + | |||
| + | Em alguns sistemas tipo UNIX é comum que o paginador __more__ seja apenas uma referência à ferramenta __less__, com opções de compatibilidade com o padrão. Por este motivo, a lista de implementações abaixo fica bem restrita: | ||
| + | |||
| + | * [[https:// | ||
| + | * [[https:// | ||
| + | |||
| + | __less__ (aqui usado como __more__): | ||
| + | |||
| + | * [[https:// | ||
| + | |||
| + | Nesse sentido, __less__ pode ser entendido como uma das implementações de __more__, desde que usado em modo de compatibilidade (isto é, com o uso da variável de ambiente **LESS_IS_MORE**, | ||
| + | |||
| + | Cabe dizer também que no OpenBSD há uma página de manual dedicada ao uso de __less__ em modo de compatibilidade com __more__: | ||
| + | |||
| + | * [[https:// | ||
| + | |||
| + | Existem algumas diferenças quanto ao nível de aderência dessas implementações ao padrão POSIX, sendo o modo de compatibilidade do __less__ um dos mais aderentes (sobretudo se considerarmos o suporte a __ctags__). | ||
| + | |||
| + | Além dos sistemas aderentes (totalmente ou parcialmente) ao padrão POSIX, outros sistemas também possuem o paginador __more__, com algumas diferenças inevitáveis de implementação, | ||
| + | |||
| + | * [[https:// | ||
| + | * [[https:// | ||
| + | * [[https:// | ||
utils/more.1734311181.txt.gz · Última modificação: (edição externa)