ls
imprimirá caracteres não-ASCII (ou caracteres não suportados no local atual) como ?
. Esta é uma das razões pelas quais analisar a saída de ls
é uma coisa ruim a se fazer. A saída de ls
deve ser vista . Em alguns casos, assim, esses não são os nomes reais que existem no sistema de arquivos.
Tente, em vez disso, algo como (esses arquivos serão excluídos de todos e diretórios, incluindo /path/to/dir
)
rm -rf /path/to/dir
ou
find /path/to/dir -delete
ou
find /path/to/dir -exec rm -rf {} +
ou
find /path/to/dir -print0 | xargs -0 rm -rf
Modifique para atender às suas necessidades. Para excluir apenas arquivos, adicione -type f
após o caminho nos exemplos find
, por exemplo.
Fazer apenas rm -rf *
dentro desse diretório (que é importante , o diretório de trabalho atual deve ser o diretório cujos arquivos e diretórios você deseja excluir) também pode ser suficiente .
Veja também Por que não analisa ls
?