Como eu conto os arquivos no diretório atual cujos nomes têm pelo menos 5 caracteres?

0

Estou tentando usar ls e grep . No entanto, não consigo descobrir uma maneira de contar quantos arquivos no diretório atual têm um nome com pelo menos 5 caracteres.

Como posso conseguir isso?

    
por 2310 29.10.2017 / 06:45

2 respostas

2

Solução de comandos simples find + wc :

find . -maxdepth 1 -type f -name "?????*" | wc -l
    
por 29.10.2017 / 06:54
0

Se este é o dever de casa, a tarefa pode estar procurando algo como:

ls | grep ..... | wc -l

Embora eu faça:

set -- ?????*
echo $#

ou

files=(?????*)
echo ${#files[@]}

Aqui o trabalho importante é feito pelo shell glob . que diz para combinar um caractere de um nome de arquivo; Incluindo 5 deles seguidos por um * (qualquer número de caracteres), geramos a lista de arquivos com pelo menos 5 caracteres.

A contagem é então feita pelo parâmetro $# shell na solução set ou pela contagem dos elementos na matriz.

    
por 29.10.2017 / 14:10

Tags