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

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

Re: [shell-script] Re: Capturar intervalo de linhas separadas por alguma


From: Julio C. Neves
Subject: Re: [shell-script] Re: Capturar intervalo de linhas separadas por alguma expressao
Date: Mon, 18 Sep 2017 09:24:39 -0300

Fala Voyeg3r,
Antes de mais nada bem vindo de volta, vc andou sumido... Tavas programando em VB? ;) kkk

Vai aí uma dica rápida sobre endereçamanto sob o sed:

O basicão:
/EXPR1/,/EXPR2/ Onde EXPR pode ser cadeia ou expressão regular
NINI,NFIM Número inicial e final
/CAD1/,+NUM Da cadeia CAD1 até NUM linhas após
NINI, +NUM Da linha número NINI até NUM linhas após

Um pouquinho mais incrementado:
/CAD1/,~NUM Da cadeia CAD1 até próxima linha múltipla de NUM
NINI, ~NUM Da linha NINI até próxima linha múltipla de NUM
NINI~INCR Da linha NINI, incrementando de INCR em INCR 

ATENÇÃO AMIGOS DO LINUX (principalmente os de Curitiba e Arredores)
É tudo 0800, inclusive o cafezinho ;) Compareça e ajude-nos a divulgar o Software Livre. Basta inscrever-se e participar. Garanto a excelência do evento. Te vejo lá.

Em Setembro/Outubro darei um treinamento de 40 horas no RJ e em BSB 
sobre Programação em Shell, com imersão em Expressões Regulares e 
dicas de YAD. Para mais detalhes acesse goo.gl/JkWmBx

Em  Dezembro um curso com este mesmo conteúdo/carga horária será
lecionado em SP. Maiores detalhes neste site.

Abcs,
Julio

Damos treinamento em sua empresa por um preço, 
no mínimo, 50% mais barato que qualquer curso,
com certificado e nota fiscal.

​​
Nosso time de instrutores in company é formado somente por
autores
​ ​
de Best Sellers
​ ​
​laureados ​sobre os temas. P. exemplo:

Shell básico e Programação em Shell Julio Neves
Bacula Heitor Medrado
Zabbix Adail Host
Produção Gráfica e Videografismo Cadunico


Em 17 de setembro de 2017 18:09, address@hidden [shell-script] <address@hidden> escreveu:
 

Se o padrão do começo de linha for recorrente você pode tentar isso:

awk '/^linha/' file

começo de linha --> ^

Usando o vim podemos usar o seguinte comando:

g/^[^l]/d

^ começo de linha seguido de uma lista negada contendo letra l
a letra d no final indica deleção

e se forem muitos arquivos?   digamos que sejam arquivos com extensão "x"

abra o vim na pasta contendo os arquivos e digite:

" esse comando do vim permite usar o comando argdo sobre todos os buffers abertos sem pedir confirmação
:set hidden

" Esse comando abre todos os arquivos *.x do diretório atual
:args *.x

"O comando
:argdo  g/^[^l]/d

:argdo update

" Pra reverter possíveis erros na execuação do comando
:silente argdo edit!

o comando :edit! do vim reverte o arquivo ao seu estado original

OBS: No momento não estou lembrando como usar /pattern/+1, /pattern/-1 em comandos linux, mas estou certo de que há um comando que usa esse tipo de intervalo, se não me engano é o próprio vim. caso me lembre volto a postar uma resposta.



reply via email to

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