Pergunta

Estou tentando usar:ls -la *randomString* No meu script shell para listar todos os arquivos e diretórios que contêm uma substring: "Randomstring"

Tudo funciona bem, exceto quando encontrar diretórios que correspondem à substring, quando isso acontecer, vai me dar algo assim: (digamos que o nome do diretório fosse "ttrandomstringtt")

-rw-r ----- 1 MyName Nenhum 7 de janeiro 17 17:57 .yrandomstringy.txt

TTrandomStringtt: Total 16

DRWXR-S-X 2 MyName Nenhum 4096 17 de janeiro 18:00.

drwxr-s-x 3 MyName Nenhum 4096 17 de janeiro 19:00 ..

O que eu quero fazer é a lista

DRWXR-S-X 2 HCTSUI NENHUM 4096 JAN 17 18:19 TTFRANDOMSTRINGTT

Apenas como um normal ls -la faria

Eu sou muito novo no Shell, então eu realmente preciso de ajuda, muito obrigado por me ajudar

Foi útil?

Solução

Se o seu glob corresponder a um nome de diretório, ele listará o conteúdo do diretório. Se você não quer que isso aconteça, faça ls -lad *randomString*

Outras dicas

Outra maneira que você pode usar é o encontro, que o procuram recursivamente.

find . -iname "*randomstring*" -ls
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top