[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [shell-script] Remoção de um bloco de texto de um arquivo
From: |
jimmy |
Subject: |
Re: [shell-script] Remoção de um bloco de texto de um arquivo |
Date: |
Mon, 5 Jan 2009 13:54:20 -0200 |
User-agent: |
Mutt/1.4.2.3i |
On Mon, Jan 05, 2009 at 12:11:18PM -0200, Renato de Oliveira Diogo wrote:
> Senhores, bom dia
>
> estou desenvolvendo um script que tem o intuito de remover um bloco de
> texto. Um exemplo do arquivo abaixo:
> ===
> <VirtualHost *:80>
> ServerAdmin address@hidden
> DocumentRoot /var/www/vhosts/dominio.com.br/httpdocs
> ServerName www.dominio.com.br
> ServerAlias dominio.com.br
> ErrorLog /var/www/vhosts/dominio.com.br/statistics/logs/error_log
> CustomLog /var/www/vhosts/dominio.com.br/statistics/logs/access_log common
> CBandUser dominio
> ...
> ...
> <IfModule mod_ssl.c>
> SSLEngine off
> </IfModule>
> </VirtualHost>
>
> <VirtualHost *:80>
> ServerName subdominio.dominio.com.br
> ServerAdmin address@hidden
> DocumentRoot /var/www/vhosts/dominio.com.br/subdomains/subdominio/httpdocs
> CustomLog /var/www/vhosts/dominio.com.br/statistics/logs/access_log
> combined
> ErrorLog /var/www/vhosts/dominio.com.br/statistics/logs/error_log
> ...
> ...
> Options -Includes -ExecCGI
> </Directory>
> </VirtualHost>
> ===
>
> O bloco que preciso remover inicia com <VirtualHost *:80> e termina
> com seu fechamento </VirtualHost>.
> Porém, pode haver mais de um bloco de texto que inicia e fecha com
> estes. Para diferenciar, o bloco de texto deve conter "ServerName
> subdominio.dominio.com.br"
>
> Sei que a remoção eu teria que fazer com o sed, porém como eu pego
> essas linhas especificas que me complicou a vida.
>
> Alguem tem alguma ideia, que poderia me ajudar?
>
> []s
> ________________________________________________
> Renato de Oliveira Diogo
>
> Bacharel em Ciência da Computação
> UNESP - Bauru
>
> LPIC1 - Linux Professional Institute Certification - Nível 1
>
> address@hidden
> address@hidden
>
> ------------------------------------
saudações renato,
não entendi muito bem o que você quis dizer com "remover um bloco de
texto" se era para apagá-lo de dentro do arquivo ou para exibir somente
esse bloco na tela, de qualquer forma aí vai um script simples, espero
que lhe sirva:
#!/usr/bin/sed -f
/<VirtualHost \*:80>/ {
:a;
N;
/<\/VirtualHost>/ bb;
ba;
};
:b;
/ServerName subdominio\.dominio\.com\.br/!d;
se preferir junte todas as linhas numa só e execute diretamente da linha
de comandos, os ";" já estão nos seus lugares.
- Remoção de um bloco de texto de um arquivo, Renato de Oliveira Diogo, 2009/01/05
- Re: Remoção de um bloco de texto de um arquivo, marlon_mca, 2009/01/05
- Re: [shell-script] Remoção de um bloco de texto de um arquivo,
jimmy <=
- Re: [shell-script] Remoção de um bloco de texto de um arquivo, Renato de Oliveira Diogo, 2009/01/05
- Re: [SPAM] Re: [shell-script] Remoção de um bloco de texto de um arquivo, [DirectWeb] - Marcio, 2009/01/05
- Re: [shell-script] Remoção de um bloco de texto de um arquivo, jimmy, 2009/01/05
- Re: [shell-script] Remoção de um bloco de texto de um arquivo, Renato de Oliveira Diogo, 2009/01/05
- Re: [shell-script] Remoção de um bloco de texto de um arquivo, jimmy, 2009/01/06
- Re: [shell-script] Remoção de um bloco de texto de um arquivo, Renato de Oliveira Diogo, 2009/01/06
- Re: [shell-script] Remoção de um bloco de texto de um arquivo, Renato de Oliveira Diogo, 2009/01/06