[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
lista de palavras shuf combinação
From: |
Jorge Barros de Abreu |
Subject: |
lista de palavras shuf combinação |
Date: |
Sun, 20 Jul 2008 09:30:55 -0300 |
User-agent: |
KMail/1.9.7 |
Olá.
???Como faço para extrair todas as combinações possíveis de uma lista de
palavras???
Resolvi o problema de como extrair *uma* combinação possível mas não consigo
resolver para "todas" e por isso recorro à lista.
**Explicação do problema**
Tenho uma lista de palavras da forma:
palavra0
palavra1
palavra2
palavra3
palavra4
palavra5
palavra6
palavra7
palavra8
palavra9
...
...
...
palavraN
onde N é variável que estão gravadas no arquivo x.txt sendo uma palavra por
linha.
Preciso extrair todas as combinações possíveis de palavras. Se o arquivo tiver
10 linhas/palavras o script deve solicitar a quantidade de linhas que desejo
na saída (digamos y) e gravar todas as saídas possíveis com aquele número de
linhas em vários arquivos sendo cada arquivo com as linhas solicitadas (y no
caso).
se o arquivo de entrada tiver 10 linhas e eu solicitar 5 linhas na saída o
script me deve retorar 252 arquivos cada um com 5 palavras e todos os
arquivos diferentes um do outro.
se o arquivo de entrada tiver 5 linhas e eu solicitar 3 linhas na saída o
script me deve retorar 10 arquivos cada um com 3 palavras e todos os arquivos
diferentes um do outro.
***solução parcial***
A solução para extrai uma combinação é a seguinte:
ARQUIVO="x.txt"
PALAVRAS=`wc -l $ARQUIVO | cut -d ' ' -f 1`
ARQUIVO1=`mktemp`
echo $PALAVRAS
echo "Quantas palavras você deseja extrair?" ; read N
echo $N
if [ $N -ge $PALAVRAS ]
then
echo "é maior ou igual"
exit
fi
shuf $ARQUIVO > $ARQUIVO1
tail -$N $ARQUIVO1 > y.txt
O arquivo y.txt obrigadtoriamente contém *uma* combinação.
Agradeço a ajuda.
--
Data Estelar 2454667,914537
http://usr.solar.com.br/~ficmatin
Desejo-lhe Paz, Vida Longa e Prosperidade.
São Bem Vindas Mensagens no Formato Texto Genérico com Acentos.
- lista de palavras shuf combinação,
Jorge Barros de Abreu <=