shell-script-pt
[Top][All Lists]
Advanced

[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.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]