[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RES: [shell-script] Outras Formas de Fazer Isso
From: |
Julio Cezar Neves - DATAPREVRJ |
Subject: |
RES: [shell-script] Outras Formas de Fazer Isso |
Date: |
Fri, 10 Feb 2006 11:18:11 -0200 |
Gentil,
e se vc fizesse assim:
function gseq() {
vi=${1}
vf=${2}
seq $vi $vf | xargs printf "%0${#vi}d\n"
}
[ ]s,
Julio
==================================
ENSOL: dias 12, 13 e 14 de maio
na Universidade Federal da Paraíba.
Veja detalhes em http://www.ensol.org.br
http://www.julioneves.com
| -----Mensagem original-----
| De: Gentil de Bortoli Júnior [mailto:address@hidden]
| Enviada em: sexta-feira, 10 de fevereiro de 2006 09:55
| Para: Lista Shell-Script
| Assunto: [shell-script] Outras Formas de Fazer Isso
|
|
| Pessoal, precisei gerar uma seqüência numérica para um det. problema.
| O comando seq normalmente ajudaria, mas há um porém.
|
| Os meus intervalos funcionam da seguinte forma.
|
| Exemplo 1
| Entrada: [001-010]
| Saída: 001 002 003 004 .. 010
|
| Exemplo 2
| Entrada: [0000001-000000010]
| Saída: 0000001 0000002 0000003 .. 0000010
|
| Dei uma olhada no manual do seq e infelizmente, pelo que entendi,
| o mais próximo que ele chega disso é empregando a opção -w,
| que não resolve.
|
| Decidi então fazer uma função bem simples para isso.
|
| Eu gostaria de saber se alguém conhece outra forma de conseguir
| esse resultado ou se alguém tem alguma sugestão para a função.
|
| Segue o código:
|
| function gseq() {
| vi=${1}
| vf=${2}
|
| for v in $(seq ${vi} ${vf}); do
| printf "%0${#vi}d\n" ${v}
| done
| }
|
| Exemplo de uso:
|
| gseq.sh 00000001 20
|
| Saída: 00000001 00000002 .. 00000020
|
| Ou seja, o primeiro parâmetro serve como especificador de
| formato e valor
| inicial e o segundo parâmetro indica o final da seqüência.
|
| []s
|
| --
| Gentil de Bortoli Júnior
| Chave GPG: http://gentil.bortoli.com.br/gpg
|
| "There Is No Gene For The Human Spirit"
|
|
| ---------------------------------------------------------------------
| Esta lista não admite a abordagem de outras liguagens de
| programação, como perl, C etc. Quem insistir em não seguir
| esta regra será moderado sem prévio aviso.
| ---------------------------------------------------------------------
| Sair da lista: address@hidden
| ---------------------------------------------------------------------
| Esta lista é moderada de acordo com o previsto em
http://www.listas-discussao.cjb.net
---------------------------------------------------------------------
Servidor Newsgroup da lista: news.gmane.org
Grupo: gmane.org.user-groups.programming.shell.brazil
Links do Yahoo! Grupos
- RES: [shell-script] Outras Formas de Fazer Isso,
Julio Cezar Neves - DATAPREVRJ <=