Crie um arquivo com uma lista de números aleatórios / serializados

0

Eu sei que posso usar o comando seq para gerar uma seqüência de números, como:

seq 100 999

... e sei que posso criar um arquivo com a adição de:

seq 100 999 > file.txt

... mas e se eu quisesse fazer um cálculo em cada número antes de escrevê-lo em um arquivo?

Eu quero basicamente criar um arquivo de números, que contenha os resultados de:

seq  100 999 x(times) date +%s > file.txt

Eu sei que essa não é a maneira de fazer isso, mas estou curiosa sobre como isso poderia ser feito.

Por fim, os números criados serão números de série, que nunca podem (nunca) ser duplicados. Os números resultantes precisarão ser adicionados a um banco de dados MySQL (não um arquivo file.txt) e eu precisarei adicionar mais números ao banco de dados MySQL em uma base horária / diária.

Qualquer ajuda / sugestão será apreciada.

    
por bamajr 06.10.2015 / 20:14

2 respostas

0

Perl está bem? Para cada número no intervalo de 100 a 999, ele multiplica esse número pela função perl time() (que é o mesmo que fazer date +%s ).

perl -E 'for(100..999){say $_ * time();}' > file.txt

1438382172768
1439826331576
1441270490384
1442714649192

etc.
    
por 06.10.2015 / 20:24
2

você pode usar seq, xargs e expr como:

seq 100 999|xargs -n1 expr $(date +%s) \*

a opção -n1 informa xargs para executar expr com um elemento da sequência por vez. A expressão $(date ...) será avaliada apenas uma vez.

    
por 06.10.2015 / 20:27

Tags