johnny, acho que o que você quer fazer pode ser feito facilmente em um script bash. Mas você vai querer estudar o redirecionamento, arquivos de entrada ...; deve começar esperançosamente. | Para obter palavras ou padrões ...
Como faço para extrair todas as palavras de todos os arquivos em um determinado diretório para criar um dicionário? As palavras devem ser diferentes umas das outras (letras em letras maiúsculas não são levadas em consideração. Por exemplo, carro = Carro), elas serão escritas com letras minúsculas no dicionário (mesmo que originalmente tivessem maiúsculas), elas serão classificadas. em ordem alfabética e cada linha no dicionário conterá apenas uma palavra. O dicionário estará em /home/dictionary.txt.
johnny, acho que o que você quer fazer pode ser feito facilmente em um script bash. Mas você vai querer estudar o redirecionamento, arquivos de entrada ...; deve começar esperançosamente. | Para obter palavras ou padrões ...
Depende muito do conteúdo do diretório, mas ... isso deve ser pelo menos um começo muito bom se estamos falando de arquivos de texto simples no diretório em questão.
cd
find $directory_name -type f -exec grep -o -E '\w+' {} \; | sort -u -f > out
tr '[:upper:]' '[:lower:]' < out > dictionary.txt
rm out
Sobre os comutadores, man $command
pode ser exposto.
Remover números: sed 's/[0-9]*//g' dictionary.txt > a_different_file
Remover linhas em branco: sed '/^$/d' dictionary.txt > some_other_file
Você pode fazer isso com o awk
awk 'BEGIN {RS=" "}; /^[A-Za-z]*$/ {print tolower ($0)}' ./* | sed 's_[.].*$__g' | sort -u
"print tolower" simplesmente converte para todas as letras minúsculas (faz a ordenação -u funcionar).
O sed remove os períodos finais, você pode ou não precisar gerenciar outros símbolos, dependendo dos arquivos de entrada.
Tags scripts dictionary