|
From: | Arkanon |
Subject: | Re: [shell-script-pt] preencher campos |
Date: | Thu, 25 Nov 2021 18:00:34 -0300 |
Arkanon, sim por isso perguntei se a leitura dos arquivos vai ser linha por linha.
Se não for, vai precisar de algum filtro.
Nesse caso podia ser colocar cada arquivo num vetor com mapfile
e fazer a leitura dentro do loop.
On 25/11/2021 17:08, Arkanon wrote:
> A ideia do Paulo de usar paste *paste* pode se aplicada sem loop, desde que as linhas dos arquivos batam uma a
> uma e se saiba quantas são:
>
> part1='aws ecs create-service --cluster Desenv --service-name '
> part2=' --task-definition '
> part3=' --desired-count 0 --launch-type FARGATE --platform-version LATEST --health-check-grace-period-seconds
> 647 --load-balancers=targetGroupArn=arn:aws:elasticloadbalancing:us-east-2:XXXXXXXXX:targetgroup/'
> part4=',containerName='
> part5=',containerPort=80 --network-configuration
> "awsvpcConfiguration={subnets=[subnet-08a9d32de00f79db6,subnet-0da7320c15bb56a04],securityGroups=[sg-051413dbb0ea78d3b],assignPublicIp=ENABLED}"'
>
> n=$(wc -l < arq1)
>
> . <(
> paste -d '' \
> <(yes -- "$part1" | head -n $n) arq1 \
> <(yes -- "$part2" | head -n $n) arq2 \
> <(yes -- "$part3" | head -n $n) arq3 \
> <(yes -- "$part4" | head -n $n) arq4 \
> <(yes -- "$part5" | head -n $n)
> )
>
> O *. <(...) * externo vai dar um source nos comandos resultantes do *paste* e executá-los como se fosse um
> script, no mesmo ambiente shell que estiver em uso.
>
> Acho essa solução bem mais /shell style/ e é possível que seja mais eficiente para quantidades gigantescas de
> linhas.
>
> Em qui., 25 de nov. de 2021 às 16:41, Paulo <phfbettega@gmail.com <mailto:phfbettega@gmail.com>> escreveu:
>
> Veja se funciona com o paste alimentando um loop while.
>
> paste <(echo -e 'arq1-linha1\narq1-linha2') <(echo -e 'arq2-linha1\narq2-linha2') <(echo -e
> 'arq3-linha1\narq3-linha2') <(echo -e 'arq4-linha1\narq4-linha2')|while read a b c d; do
> echo a=$a b=$b c=$c d=$d;done
> a=arq1-linha1 b=arq2-linha1 c=arq3-linha1 d=arq4-linha1
> a=arq1-linha2 b=arq2-linha2 c=arq3-linha2 d=arq4-linha2
>
> On 25/11/2021 15:36, Eldimar Souza wrote:
> >
> > Boa tarde, Paulo.
> >
> > De fato o paste consegue fazer as inserções, porém não consegui usar ele pra um loop, se executar um
> paste
> > arquivo.txt, ele vai listar todas as linhas, mas seria como no exemplo abaixo:
> >
> > Se eu executar um echo "listando os usuários`paste usuarios.txt`" ele vai me retornar assim:
> >
> > listando os usuários: "linha-n1-arqui1 e na segunda linha ele lista apenas o conteúdo do
> arquivo, sem o
> > echo, mas queria a saída completa para todas as linhas:
> > listando os usuários linha-n1-ar1
> > listando os usuários linha-n2-ar1
> > listando os usuários linha-n3-ar1
> >
> > Em qui., 25 de nov. de 2021 às 14:06, Paulo <phfbettega@gmail.com <mailto:phfbettega@gmail.com>
> <mailto:phfbettega@gmail.com <mailto:phfbettega@gmail.com>>> escreveu:
> >
> > Olá Eldimar, se os quatro arquivos são lidos sem pular nenhuma linha,
> > o paste pode ser a solução.
> >
> > paste <(echo -e 'arq1-linha1\narq1-linha2') <(echo -e 'arq2-linha1\narq2-linha2') <(echo -e
> > 'arq3-linha1\narq3-linha2') <(echo -e 'arq4-linha1\narq4-linha2')
> > arq1-linha1 arq2-linha1 arq3-linha1 arq4-linha1
> > arq1-linha2 arq2-linha2 arq3-linha2 arq4-linha2
> >
> > Abraços Paulo
> >
> > On 25/11/2021 12:26, Eldimar Souza wrote:
> > > Bom dia, pessoal
> > > preciso executar o comando a seguir 44 vezes e mudando as palavras destacadas e sublinhadas
> pelo
> > conteúdo
> > > de alguns arquivos, queria fazer um loop e ir executando a medida que o txt fosse lido, eu sei
> usando o
> > xargs,
> > > lendo apenas um arquivo, mas minha necessidade é ler 3 arquivos diferentes com conteúdos
> diferentes;
> > >
> > >
> > > aws ecs create-service \
> > > --cluster Desenv \
> > > --service-name *_conteudo-arquivo-1_ \*
> > > --task-definition _*conteudo-arquivo-2*_ \
> > > --desired-count 0 \
> > > --launch-type FARGATE \
> > > --platform-version LATEST \
> > > --health-check-grace-period-seconds 647 \
> > >
> > >
> >
> --load-balancers=targetGroupArn=arn:aws:elasticloadbalancing:us-east-2:XXXXXXXXX:targetgroup/_*conteudo-arquivo-3*_
> >
> > > ,containerName=_*conteudo-arquivo-4*_,containerPort=80 \
> > > --network-configuration
> > >
> >
> "awsvpcConfiguration={subnets=[subnet-08a9d32de00f79db6,subnet-0da7320c15bb56a04],securityGroups=[sg-051413dbb0ea78d3b],assignPublicIp=ENABLED}"
> > >
> > > meus argumentos de pesquisa ainda não foram suficientes pra encontrar uma solução.
> > >
> > > Obrigado
> > >
> > > _______________________________________________
> > > Lista brasileira de usuários de shell script
> > > Endereço de e-mail da lista: shell-script-pt@nongnu.org <mailto:shell-script-pt@nongnu.org>
> <mailto:shell-script-pt@nongnu.org <mailto:shell-script-pt@nongnu.org>>
> > > Para se inscrever ou desinscrever acesse:
> https://lists.nongnu.org/mailman/listinfo/shell-script-pt
> <https://lists.nongnu.org/mailman/listinfo/shell-script-pt>
> > <https://lists.nongnu.org/mailman/listinfo/shell-script-pt
> <https://lists.nongnu.org/mailman/listinfo/shell-script-pt>>
> > > Para ver os arquivos da lista (mensagens anteriores) e pesquisar nelas, acesse
> > https://lists.nongnu.org/archive/html/shell-script-pt/
> <https://lists.nongnu.org/archive/html/shell-script-pt/>
> > <https://lists.nongnu.org/archive/html/shell-script-pt/
> <https://lists.nongnu.org/archive/html/shell-script-pt/>>
> > >
> > > NOTA: A lista anterior, no Yahoo Groups, foi *desativada*. Por favor utilize somente esta.
> > >
> >
> > _______________________________________________
> > Lista brasileira de usuários de shell script
> > Endereço de e-mail da lista: shell-script-pt@nongnu.org <mailto:shell-script-pt@nongnu.org>
> <mailto:shell-script-pt@nongnu.org <mailto:shell-script-pt@nongnu.org>>
> > Para se inscrever ou desinscrever acesse: https://lists.nongnu.org/mailman/listinfo/shell-script-pt
> <https://lists.nongnu.org/mailman/listinfo/shell-script-pt>
> > <https://lists.nongnu.org/mailman/listinfo/shell-script-pt
> <https://lists.nongnu.org/mailman/listinfo/shell-script-pt>>
> > Para ver os arquivos da lista (mensagens anteriores) e pesquisar nelas, acesse
> > https://lists.nongnu.org/archive/html/shell-script-pt/
> <https://lists.nongnu.org/archive/html/shell-script-pt/>
> > <https://lists.nongnu.org/archive/html/shell-script-pt/
> <https://lists.nongnu.org/archive/html/shell-script-pt/>>
> >
> > NOTA: A lista anterior, no Yahoo Groups, foi *desativada*. Por favor utilize somente esta.
> >
> >
> >
> > --
> > ºvº "Software Livre: não é pelo dinheiro.
> > /( _ )\ É uma questão de consciência."
> > ^ ^
> >
> >
> > _______________________________________________
> > Lista brasileira de usuários de shell script
> > Endereço de e-mail da lista: shell-script-pt@nongnu.org <mailto:shell-script-pt@nongnu.org>
> > Para se inscrever ou desinscrever acesse: https://lists.nongnu.org/mailman/listinfo/shell-script-pt
> <https://lists.nongnu.org/mailman/listinfo/shell-script-pt>
> > Para ver os arquivos da lista (mensagens anteriores) e pesquisar nelas, acesse
> https://lists.nongnu.org/archive/html/shell-script-pt/
> <https://lists.nongnu.org/archive/html/shell-script-pt/>
> >
> > NOTA: A lista anterior, no Yahoo Groups, foi *desativada*. Por favor utilize somente esta.
> >
>
> _______________________________________________
> Lista brasileira de usuários de shell script
> Endereço de e-mail da lista: shell-script-pt@nongnu.org <mailto:shell-script-pt@nongnu.org>
> Para se inscrever ou desinscrever acesse: https://lists.nongnu.org/mailman/listinfo/shell-script-pt
> <https://lists.nongnu.org/mailman/listinfo/shell-script-pt>
> Para ver os arquivos da lista (mensagens anteriores) e pesquisar nelas, acesse
> https://lists.nongnu.org/archive/html/shell-script-pt/
> <https://lists.nongnu.org/archive/html/shell-script-pt/>
>
> NOTA: A lista anterior, no Yahoo Groups, foi *desativada*. Por favor utilize somente esta.
>
>
>
> --
> (o_ @arkanon <http://twitter.com/arkanon> (Twitter) __o
> //\ arkanon@lsd.org.br <mailto:arkanon@lsd.org.br> _`\<,
> V_/_ www.lsd.org.br <http://www.lsd.org.br/> (_)/(_)
> ---------------------------------
>
> _______________________________________________
> Lista brasileira de usuários de shell script
> Endereço de e-mail da lista: shell-script-pt@nongnu.org
> Para se inscrever ou desinscrever acesse: https://lists.nongnu.org/mailman/listinfo/shell-script-pt
> Para ver os arquivos da lista (mensagens anteriores) e pesquisar nelas, acesse https://lists.nongnu.org/archive/html/shell-script-pt/
>
> NOTA: A lista anterior, no Yahoo Groups, foi *desativada*. Por favor utilize somente esta.
>
_______________________________________________
Lista brasileira de usuários de shell script
Endereço de e-mail da lista: shell-script-pt@nongnu.org
Para se inscrever ou desinscrever acesse: https://lists.nongnu.org/mailman/listinfo/shell-script-pt
Para ver os arquivos da lista (mensagens anteriores) e pesquisar nelas, acesse https://lists.nongnu.org/archive/html/shell-script-pt/
NOTA: A lista anterior, no Yahoo Groups, foi *desativada*. Por favor utilize somente esta.
[Prev in Thread] | Current Thread | [Next in Thread] |