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

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] Criar pasta em sequencia usando variável.


From: Julio C. Neves
Subject: Re: [shell-script] Criar pasta em sequencia usando variável.
Date: Thu, 7 Nov 2019 17:31:07 -0200

Sem dúvida Ricardo o eval é a melhor solução. Não pensei muito antes de responder e falei besteira, pq sempre combato o usos de cmds externos como o seq. O eval é builtin.

O eval (do inglês evaluate) da duas passadas no cmd na primeira ele avalia (evaluate) o que consegue e na segunda interpreta o que foi avaliado e o executa.

Assim sendo, na primeira passada ele substitui $Mes por 1 e na segunda ele expande as chaves criando os diretórios.

Abraços,
Julio

» Não tem tempo para fazer um curso presencial?
» Na sua cidade não tem nenhum bom curso de Linux?
» Em outubro abriremos uma semana de inscrições
» para uma nova turma. Veja mais detalhes em:

Também damos treinamento em sua empresa
em qualquer cidadecom certificado e nota fiscal.







Em qui., 7 de nov. de 2019 às 15:53, Ricardo Reis address@hidden [shell-script] <address@hidden> escreveu:
 


Obrigado Julio,
pela resposta, por compartilhar seu conhecimento.
Nem esperava ter resposta, mais tarde acabei achando um solução.
Usei o comando "eval"
$ eval mkdir {$MES..12}

em teste rápido, levou metade do tempo do "seq" para executar. Só não sei se é a melhor solução para qualquer ocasião.

Grato,
Ricardo Paiva


Em qua., 6 de nov. de 2019 às 09:39, 'Julio C. Neves' address@hidden [shell-script] <address@hidden> escreveu:
 

O Shell faz expansão das chaves antes de resolver as variáveis. então, apesar da performance ser ruim, acho que a forma para fazer deveria ser:
$ mes=1
$ seq -s ' ' $mes 4
1 2 3 4

Então:
mkdir $(seq -s ' ' $mes 4)

Abraços,
Julio

» Não tem tempo para fazer um curso presencial?
» Na sua cidade não tem nenhum bom curso de Linux?
» Em outubro abriremos uma semana de inscrições
» para uma nova turma. Veja mais detalhes em:

Também damos treinamento em sua empresa
em qualquer cidadecom certificado e nota fiscal.







Em qua, 6 de nov de 2019 às 10:30, Ricardo Reis address@hidden [shell-script] <address@hidden> escreveu:
 

Bom dia pessoal,
preciso de uma ajuda.
Tenho um script para criar login no FTP, que preciso adicionar um comando de criar pastas referentes aos meses do ano no perfil do usuário, iniciando no mês atual a criação do login.
exemplo: Criado login em outubro, tem que ter no perfil do login as pastas 10, 11 e 12.

Para criar pasta em sequencia, uso o comando mkdir {1..4} ,
ai crias as pasta :
1
2
3
4
Mas se uso uma variável   MES=1     
comando mkdir {$MES..4} ,
ai crias as pasta :
{1..4}

Qual é a maneira correta?


reply via email to

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