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

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

Re: [shell-script] Inserir Bloco de código em um arq uivo sem o uso do c


From: Julio Cardoso
Subject: Re: [shell-script] Inserir Bloco de código em um arq uivo sem o uso do comando cat
Date: Sat, 30 Apr 2016 01:30:42 -0300
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.7.2

Obrigado Julio e a todos da Lista.

Em 29-04-2016 10:48, 'Julio C. Neves' address@hidden [shell-script] escreveu:
 
Então continuam 2 dúviadas: a sua e a nossa. É muito difícil imaginar, em uma lista shell, algo que *não* use cmds shell!

D E S I S T O!!!!!

Abcs,
Julio
@juliobash

P
róximos cursos de Shell
Cidade         Local Período
Rio de Janeiro EDX 0
​7-08/05 e 14-15/05 (Sábados e Domingos)
Dou treinamento de Shell em qualquer cidade.
Para mais detalhes, me mande um e-mail.



Em 28 de abril de 2016 21:52, Julio Cardoso address@hidden [shell-script] <address@hidden> escreveu:
 

Obrigado a todos.
A dúvida é, uma maneira simples de isolar várias linhas sem nescessitar que se use comandos em shell.
Obrigado a todos! 

Em 28-04-2016 11:42, 'Julio C. Neves' address@hidden [shell-script] escreveu:
 
Fala Itamar,
eu tb havia pensado no cmd read (r) do sed. De forma simplificada para o nosso caso, ele funcionaria assim:

$ cat arq
2,2
2,4
2,6
2,8
$ seq 4 | sed '2r arq'
1
2
2,2
2,4
2,6
2,8
3
4

Ou seja inseri *após* a linha 2, o arquivo arq.

Abcs,
Julio
@juliobash

P
róximos cursos de Shell
Cidade         Local Período
Rio de Janeiro EDX 0
​7-08/05 e 14-15/05 (Sábados e Domingos)
Dou treinamento de Shell em qualquer cidade.
Para mais detalhes, me mande um e-mail.



Em 27 de abril de 2016 22:26, address@hidden [shell-script] <address@hidden> escreveu:
 

Julio Cardoso
Nesse exemplo em especial apenas troque as aspas duplas ( " " ) por aspas simples ( ' ' ), que delimitam o trecho de código a ser inserido.

Mas se quiser inserir um script no meio de outro pode usar o getline no awk.
Vamos supor que queira incluir o script2.sh depois da sexta linha do script1.sh, e o resultado vá para saida.sh, poderia ser assim:

awk '1;{if (NR==6) {while ((getline linha < "script2.sh")>0) print linha;}}' script1.sh > saida.sh

Com sed também é possível usando o comando "-r arquivo", mas tem algumas pegadinhas que não domino o suficiente para um exemplo seguro.

Isso ajuda?

[]'s
Itamar






reply via email to

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