Separador aleatório, preenchimento automático em caso de início do nome de ficheiro idêntico?

1

Digamos que eu tenha vários arquivos em um diretório que todos iniciem com a mesma string

$ ls
  fileAA234 fileAA247 fileAA255 fileAA264
  fileAA269 fileAA277 fileAA285 fileAA294

Frequentemente, ao navegar por esses arquivos de dados na linha de comando, eu só quero ler um desses arquivos, qualquer um, para ver como eles estão estruturados.

Mas se eu entrar

$ less f 

E, em seguida, pressione a aba para concluir. A resposta será

$ less fileAA2
  fileAA234 fileAA247 fileAA255 fileAA264
  fileAA269 fileAA277 fileAA285 fileAA294

O que não me deixa muito mais perto de abrir um dos arquivos.

Então, por enquanto eu uso o mouse para marcar um nome de arquivo aleatório e copio e colo no prompt, ou eu me inclino para frente e faço meus pobres olhos descobrirem uma string única para terminar de digitar o nome do arquivo.

Essa é uma solução fácil para isso? Eu só estou sentindo falta de algo óbvio, certo? Eu realmente gostaria de ter algo como tab + enter para completar automaticamente e abrir o primeiro arquivo na lista, como neste caso fileAA234 .

Obrigado por qualquer ajuda. Eu imagino que há uma maneira de construir um shell script combinando algumas ferramentas como ls e head , mas eu ainda sou iniciante e ainda não encontrei uma solução.

    
por user1323995 23.08.2012 / 14:07

2 respostas

2

Use apenas um curinga (*):

$ less fileAAA*

Isso abrirá o primeiro arquivo em menos. Quando você chegar ao final do arquivo, menos continuará para o próximo. Se tudo que você quer é um rápido olhar para qualquer arquivo, e sempre abrir o primeiro (classificado alfanumericamente), clique em "q" para sair menos assim que você tiver visto o suficiente.

    
por 23.08.2012 / 14:21
2

Para o bash, coloque o seguinte em ~/.inputrc :

"\C-i": menu-complete

Isto fará com que o Tab sempre complete os nomes completos; pressione novamente para alternar entre as conclusões

    
por 23.08.2012 / 19:21