[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [shell-script] Re: Ajuda Urgente com FORO
From: |
Rafael Tomelin |
Subject: |
Re: [shell-script] Re: Ajuda Urgente com FORO |
Date: |
Thu, 4 Jun 2009 11:23:07 -0300 |
Olá pessoal,
Consegui resolver o meu problema da seguinte forma:
#!/bin/bash
#Define as variaveis
variavel=1
valor=1
DADOS="/dados/"
#Verifica a condição
while [ $variavel = $valor ]; do
#Conta quanto caracteres a variavel valor tem
cont=`expr length $valor`
#Se tiver 1 caracter, acrescenta 7 zeros na frente do numero
if [ $cont -eq 1 ]; then
zero=0000000
valor2=$zero$valor
mkdir $DADOS$valor2
chgrp -R clientes $DADOS$valor2
chmod -R 740 $DADOS$valor2
echo $DADOS$valor2
fi
#Se tiver 2 caracter, acrescenta 6 zeros na frente do numero
if [ $cont -eq 2 ]; then
zero=000000
valor2=$zero$valor
mkdir $DADOS$valor2
chgrp -R clientes $DADOS$valor2
chmod -R 740 $DADOS$valor2
echo $DADOS$valor2
fi
#Se tiver 3 caracter, acrescenta 5 zeros na frente do numero
if [ $cont -eq 3 ]; then
zero=00000
valor2=$zero$valor
mkdir $DADOS$valor2
chgrp -R clientes $DADOS$valor2
chmod -R 740 $DADOS$valor2
echo $DADOS$valor2
fi
#Se tiver 4 caracter, acrescenta 4 zeros na frente do numero
if [ $cont -eq 4 ]; then
zero=0000
valor2=$zero$valor
mkdir $DADOS$valor2
chgrp -R clientes $DADOS$valor2
chmod -R 740 $DADOS$valor2
echo $DADOS$valor2
fi
#Se tiver 5 caracter, acrescenta 3 zeros na frente do numero
if [ $cont -eq 5 ]; then
zero=000
valor2=$zero$valor
mkdir $DADOS$valor2
chgrp -R clientes $DADOS$valor2
chmod -R 740 $DADOS$valor2
echo $DADOS$valor2
fi
#Se tiver 6 caracter, acrescenta 2 zeros na frente do numero
if [ $cont -eq 6 ]; then
zero=00
valor2=$zero$valor
mkdir $DADOS$valor2
chgrp -R clientes $DADOS$valor2
chmod -R 740 $DADOS$valor2
echo $DADOS$valor2
fi
#Se tiver 7 caracter, acrescenta 1 zero na frente do numero
if [ $cont -eq 7 ]; then
zero=0
valor2=$zero$valor
mkdir $DADOS$valor2
chgrp -R clientes $DADOS$valor2
chmod -R 740 $DADOS$valor2
echo $DADOS$valor2
fi
#Se o valor for iagual 2000200, diminui 10000 para sair do loop
if [ $valor -eq 2000200 ]; then
valor=`expr $valor + 198765`
fi
#Soma a variavel +1, para continuar no loop
valor=$(($valor + 1))
variavel=$(($variavel+1))
done
2009/6/4 Anderson Kaiser <address@hidden>
>
>
> 2009/6/3 Jeiks <address@hidden <jacsonrcsilva%40gmail.com>>
>
> >
> >
> > Opa,
> > gente... puxando um pouquinho pra mais assuntos... sei que deve ter como
> > melhorar, mas olha:
> > se eu fizer:
> >
> > mkdir {001,002,003,004}
> >
> > ele cria, sem problemas os diretorios 001, 002, 003 e 004.
> > Então seria interessante, se fosse possível, criar uns 100 diretórios
> > assim:
> >
> > mkdir {`seq -s , -w 100`}
> >
> > porém não funciona, penso que seja a ordem que o shell executa as
> > funções.
> > Mas assim funciona:
> >
> > bash -c "$(echo mkdir {$(seq -s , -w 100)})"
> >
> > O comando "seq" e depois o "echo" são primeiramente interpretados e a
> > expressão correta é escrita. Esta então é interpretada pelo nosso bash.
> > Como viram, ficou uma coisa feia que só.... hehehe
> > Gostaria de saber se alguem tem idéia de como a gente melhora isso,
> > porém seguindo a mesma idéia de utilizar as chaves e algo pra não termos
> que
> > digitar todo os 100 algarismos.
> >
> > abraços a todos
>
> Por que não usar assim, para seu exemplo:
>
> for i in $(seq 200) ; do mkdir $i ; done
>
> --
> Anderson Kaiser
> address@hidden <alpkaiser%40gmail.com>
> Linux User #: 426240
>
>
[As partes desta mensagem que não continham texto foram removidas]
- Re: [shell-script] Re: Ajuda Urgente com FORO, Wagner Brasileiro, 2009/06/03
- Re: [shell-script] Re: Ajuda Urgente com FORO, Jeiks, 2009/06/03
- Re: [shell-script] Re: Ajuda Urgente com FORO, Anderson Kaiser, 2009/06/04
- Re: [shell-script] Re: Ajuda Urgente com FORO, Jeiks, 2009/06/04
- Res: [shell-script] Re: Ajuda Urgente com FORO, Wilson Varaschin, 2009/06/04
- Re: [shell-script] Re: Ajuda Urgente com FORO, Jeiks, 2009/06/04
- Re: [shell-script] Re: Ajuda Urgente com FORO, Rafael Tomelin, 2009/06/04
- Re: [shell-script] Re: Ajuda Urgente com FORO, Flavio Junior, 2009/06/05
- Re: [shell-script] Re: Ajuda Urgente com FORO,
Rafael Tomelin <=
- Re: [shell-script] Re: Ajuda Urgente com FORO, MrBiTs, 2009/06/04
- Re: [shell-script] Re: Ajuda Urgente com FORO, Julio C. Neves, 2009/06/04
- Res: [shell-script] Re: Ajuda Urgente com FORO, Wilson Varaschin, 2009/06/04
- Res: [shell-script] Re: Ajuda Urgente com FORO, Marcelo G. Dias, 2009/06/08
- Res: Res: [shell-script] Re: Ajuda Urgente com FORO, Wilson Varaschin, 2009/06/08
- Re: Res: [shell-script] Re: Ajuda Urgente com FORO, Marcelo Andrade, 2009/06/10