É normal usar terminais que pressionam ciclos de subida e descida através de comandos anteriores, inseridos cronologicamente.
Aprendi em um site como adicionar a esse comportamento preenchendo automaticamente o que estou digitando no cursor com base nos comandos inseridos anteriormente ao pressionar para cima e para baixo.
Por exemplo, digamos que eu digitei os seguintes comandos nesta ordem:
-
ls Videos
-
ls Vids
-
lsomething
-
ls Videos/Funny/Old
-
vi file
-
ls Music
Se eu não tiver digitado nada, pressionar para cima e para baixo percorrerá todas as linhas como se fosse normal. Mas, se eu digitei ls
, pressione os ciclos para cima e para baixo em todos os comandos em que os primeiros 2 caracteres são ls
(linhas 1,2,3,4,6 acima). Entrando ls
(com um espaço depois), porém, só vai subir e descer pelas linhas 1,2,4,6. Da mesma forma, ls Vid
permite que as setas percam as linhas 1,2,4, mas ls Videos
apenas permite alternar entre as linhas 1 e 4.
É muito útil preencher valores específicos dos comandos que você precisa inserir repetidas vezes sem ter que percorrer todos os comandos não relacionados que você inseriu entre eles. Por exemplo, estou tentando testar os efeitos dos valores de env
, como o código de idioma, nas coisas:
env [many different values] [command]
[insert many different commands here]
env [slightly different values from before] [command]
[doing other stuff]
Só precisarei pressionar algumas vezes depois de digitar env
para alternar entre os valores que tentei.
Peço desculpas se for um longo caminho para descrevê-lo. Eu não sei como é chamado. Meus terminais costumavam ter esse comportamento, mas eles parecem ter perdido e eu não consigo encontrar o site que eu aprendi. Eu acho que tem algo a ver com a edição de ~/.bashrc
.