Re: [shell-script] Re: Ajuda Urgente com FORO
faz assim: Segundo o grande Mestre Julio, se escrever muito tem algo errado, sempre achei isso, mas não o conhecia para atestar essa insanidade! rs... prefixo=Arq seq 1 999 | xargs -i mkdir "$prefixo{}" E pronto! Tem cara de gambiarra, imaginei que para ser tão simples de escrever fosse oneroso à máquina internamente fosse fazer FORs a dar com pau, mas testei com o time e se fosse fazer a mesma versão com o FOR consumiria o dobro do tempo. Wagner Brasileiro --- Em ter, 2/6/09, voyeg3r escreveu: De: voyeg3r Assunto: [shell-script] Re: Ajuda Urgente com FORO Para: shell-script@yahoogrupos.com.br Data: Terça-feira, 2 de Junho de 2009, 20:01 --- Em shell-script@ yahoogrupos. com.br, Rafael Tomelin escreveu > > Olá pessoal, > > Estou precisqando criar um for para que crie diversos diretorios > "/dados?xxx" , porém esses diretórios tem que ser da seguinte forma: > > ou seja de até > > como posso fazer isso? > > > for i in ;do >mkdir $dados$i > done > > porém o $i não fica no formato 0001, 0002, > for i in `seq -w 999`; do mkdir ${dados}$i done o uso das chaves é para separar as variáveis > > [As partes desta mensagem que não continham texto foram removidas] > Veja quais são os assuntos do momento no Yahoo! +Buscados http://br.maisbuscados.yahoo.com [As partes desta mensagem que não continham texto foram removidas]
Re: [shell-script] Re: Ajuda Urgente com FORO
faz assim: Segundo o grande Mestre Julio, se escrever muito tem algo errado, sempre achei isso, mas não o conhecia para atestar essa insanidade! rs... prefixo=Arq seq 1 999 | xargs -i mkdir "$prefixo{}" E pronto! Tem cara de gambiarra, imaginei que para ser tão simples de escrever fosse oneroso à máquina internamente fosse fazer FORs a dar com pau, mas testei com o time e se fosse fazer a mesma versão com o FOR consumiria o dobro do tempo. --- Em ter, 2/6/09, voyeg3r escreveu: De: voyeg3r Assunto: [shell-script] Re: Ajuda Urgente com FORO Para: shell-script@yahoogrupos.com.br Data: Terça-feira, 2 de Junho de 2009, 20:01 --- Em shell-script@ yahoogrupos. com.br, Rafael Tomelin escreveu > > Olá pessoal, > > Estou precisqando criar um for para que crie diversos diretorios > "/dados?xxx" , porém esses diretórios tem que ser da seguinte forma: > > ou seja de até > > como posso fazer isso? > > > for i in ;do >mkdir $dados$i > done > > porém o $i não fica no formato 0001, 0002, > for i in `seq -w 999`; do mkdir ${dados}$i done o uso das chaves é para separar as variáveis > > [As partes desta mensagem que não continham texto foram removidas] > Veja quais são os assuntos do momento no Yahoo! +Buscados http://br.maisbuscados.yahoo.com [As partes desta mensagem que não continham texto foram removidas]
Re: [shell-script] Re: tar.gz depois de wget
Pelo que eu entendi a discussão não faz sentido para um tar.gz se está dando um wget em um arquivo tar.gz, logo sabe o nome dele, a menos que fosso o inverso, estivesse dando um wget numa pasta e quisesse compacta-la logo a seguir, mesmo assim vc que daria o nome. Wagner Brasileiro --- Em qua, 15/7/09, jsca...@ymail.com escreveu: De: jsca...@ymail.com Assunto: [shell-script] Re: tar.gz depois de wget Para: shell-script@yahoogrupos.com.br Data: Quarta-feira, 15 de Julho de 2009, 18:13 Você pode tentar assim wget http://rubyforge. org/frs/download .php/57643/ rubygems- 1.3.4.tgz -O nome_do_arquivo && tar xvzf nome_do_arquivo onde o (-O nome_do_programa) irá escreve rubygems-1.3. 4.tgz que é o arquivo a ser baixado pelo wget, em um novo nome. Ai é só passa para o tar o novo nome. At, Jamilson Silva User Arch Linux http://www.archlinu x-br.org escreveu > > Já tentou > > wget -c http://url/arquivo. tar.gz && tar -xzvf arquivo.tar. gz > > Att, > > > 2009/7/15 Edgard Costa Veja quais são os assuntos do momento no Yahoo! +Buscados http://br.maisbuscados.yahoo.com [As partes desta mensagem que não continham texto foram removidas]
Re: Res: Res: Res: Res: [shell-script] Problema com tail -f e redirecionamento para arquivo
Justamente Thiago, O problema é que pelo que vi o CUT só trabalha com arquivo e o tail está trabalhando com a saída padrão, ou joga isso para um arquivo intermediário (gambiarra) ou trabalha com FIFO. --- Em qui, 27/8/09, Bruno Gunter escreveu: De: Bruno Gunter Assunto: Re: Res: Res: Res: Res: [shell-script] Problema com tail -f e redirecionamento para arquivo Para: shell-script@yahoogrupos.com.br Data: Quinta-feira, 27 de Agosto de 2009, 11:11 Me cola uma linha completa do log do squid... Acho que podemos tentar um sed ou awk aí. essa sua máquina é um BSD ou Linux? On Thu, 2009-08-27 at 07:06 -0700, Thiago Andrighetti wrote: > > Acabei de fazer um teste, se eu tiro o comando cut, deixando o tail > direto para o arquivo ele funciona normalmente, como a seguir: > tail -f /var/log/squid/ access.log >> texto.txt > > -- > Thiago Andrighetti > Analista de Suporte em Software Livre > e Programador > www.thiagoapadua. com.br > > > > >De: Thiago Andrighetti > >Para: shell-script@ yahoogrupos. com.br > >Enviadas: Quinta-feira, 27 de Agosto de 2009 11:01:21 > >Assunto: Res: Res: Res: [shell-script] Problema com tail -f e > redirecionamento para arquivo > > > > > > > > > > > > > > >Me desculpe, mas acho que não me expressei direito. segue meu script. > > > >>#!/bin/bash > >>tail -f /var/log/squid/ access.log |cut -d' ' -f11 >> texto.txt > > > >>Objetivo: Fazer o texto.txt ir sendo incrementado com os sites > acessados pelo squid. > > > >>-- > >>Thiago Andrighetti > >>Analista de Suporte em Software Livre > >>e Programador > >>www.thiagoapadua. com.br > > > >>> > >>>De: Bruno Gunter > >>>Para: shell-script@ yahoogrupos. com.br > >>>Enviadas: Quinta-feira, 27 de Agosto de 2009 10:40:46 > >>>Assunto: Re: Res: Res: [shell-script] Problema com tail -f e > redirecionamento para arquivo > >>> > >>> > > >>> > >>> > >>> > >>> > >>>Como você disse, funciona no bash e no scrip não. Fica difícil eu > conseguir achar o erro em um script sem conhecê-lo, me desculpe, > mas > acho que não posso te ajudar com precisaão aqui. > >>> > Tente, como teste, comentar todas as linha que movem o script ou o > sobrescrevem. O que costumo fazer é dar um echo nos comandos > suspeitos > quando estou debugando... > >>> > No mais, boa sorte. > >>> > On Thu, 2009-08-27 at 06:35 -0700, Thiago Andrighetti wrote: > > > > meu script completo não é necessário, pois o que eu estou > testando é > > exatamete o que passei na lista, no caso o script seguinte: > > #!/bin/bash > > tail -f /var/log/squid/ access.log |cut -d' ' -f11 > texto.txt > > > > Se ponho essas linhas em um script e executo, o arquito > texto.txt fica > > em branco ssemprenã o aparece nada. > > Agora se eu executo a linha tail -f /var/log/squid/ access.log | > cut > > -d' ' -f11 > texto.txt no console, ai eu abro > > um outro terminal e dou um tail -f texto.txt, ai eu vejo que ele > esta > > sendo incrementado normalmente. > > > > Ou seja, quando percebi o que estava acontecendo no meu script > > original, fiz esse script para testar, e o mesmo problema que > acontece > > no meu script, acontece nesse > > > > -- > > Thiago Andrighetti > > Analista de Suporte em Software Livre > > e Programador > > www.thiagoapadua. com.br > > > > > > > >De: Bruno Gunter > > >Para: shell-script@ yahoogrupos. com.br > > >Enviadas: Quinta-feira, 27 de Agosto de 2009 9:59:07 > > >Assunto: Re: Res: [shell-script] Problema com tail -f e > > redirecionamento para arquivo > > > > > > > > > > > > > > > > > > > > > >Se não é apenas isso, cola teu script completo, que aí fica > mais > > fácil > > >>da gente achar o que é. > > > > > >>[]'s > > > > > >>On Thu, 2009-08-27 at 05:08 -0700, Thiago Andrighetti wrote: > > >>> > > >>> Ol[a Bruno e Marcos, obrigado por responderem. > > >>> Esse script que mandei foi somente para demonstrar o > problema, meu > > >>> script eh bem maior. Ai eu fiz esse soh para testar essa > > >>> funcionalidade entende. > > >>> A questão do '>', é que no meu script realmente eu sempre > crio um > > >>> arquivo novo, pois tem uma parte dele em que eu paro esse > tail e > > movo > > >>> o arquivo..., detalhe, esse tail eu sempre mando em > background, > > mas > > >>> isso não vem ao caso. > > >>> > > >>> E claro, sei as diferenças do tail e cat, o que me intriga, > é essa > > >>> linha funcionar perfeitamente no meu shell atual, e quando > executo > > ela > > >>> via script ela não funcionar. > > >>> > > >>> -- > > >>> Thiago Andrighetti > > >>> Analista de Suporte em Software Livre > > >>> e Programador >
Re: Res: Res: Res: Res: [shell-script] Problema com tail -f e redirecionamento para arquivo
Outra coisa é que o arquivo texto.txt não está fechado, ele não existe até o término do processo e desta forma que o script está escrito, quando der Ctrl+C ele fecha e vc perde tudo. --- Em qui, 27/8/09, Wagner Brasileiro escreveu: De: Wagner Brasileiro Assunto: Re: Res: Res: Res: Res: [shell-script] Problema com tail -f e redirecionamento para arquivo Para: shell-script@yahoogrupos.com.br Data: Quinta-feira, 27 de Agosto de 2009, 11:28 Justamente Thiago, O problema é que pelo que vi o CUT só trabalha com arquivo e o tail está trabalhando com a saída padrão, ou joga isso para um arquivo intermediário (gambiarra) ou trabalha com FIFO. --- Em qui, 27/8/09, Bruno Gunter escreveu: De: Bruno Gunter Assunto: Re: Res: Res: Res: Res: [shell-script] Problema com tail -f e redirecionamento para arquivo Para: shell-script@ yahoogrupos. com.br Data: Quinta-feira, 27 de Agosto de 2009, 11:11 Me cola uma linha completa do log do squid... Acho que podemos tentar um sed ou awk aí. essa sua máquina é um BSD ou Linux? On Thu, 2009-08-27 at 07:06 -0700, Thiago Andrighetti wrote: > > Acabei de fazer um teste, se eu tiro o comando cut, deixando o tail > direto para o arquivo ele funciona normalmente, como a seguir: > tail -f /var/log/squid/ access.log >> texto.txt > > -- > Thiago Andrighetti > Analista de Suporte em Software Livre > e Programador > www.thiagoapadua. com.br > > > > >De: Thiago Andrighetti > >Para: shell-script@ yahoogrupos. com.br > >Enviadas: Quinta-feira, 27 de Agosto de 2009 11:01:21 > >Assunto: Res: Res: Res: [shell-script] Problema com tail -f e > redirecionamento para arquivo > > > > > > > > > > > > > > >Me desculpe, mas acho que não me expressei direito. segue meu script. > > > >>#!/bin/bash > >>tail -f /var/log/squid/ access.log |cut -d' ' -f11 >> texto.txt > > > >>Objetivo: Fazer o texto.txt ir sendo incrementado com os sites > acessados pelo squid. > > > >>-- > >>Thiago Andrighetti > >>Analista de Suporte em Software Livre > >>e Programador > >>www.thiagoapadua. com.br > > > >>> > >>>De: Bruno Gunter > >>>Para: shell-script@ yahoogrupos. com.br > >>>Enviadas: Quinta-feira, 27 de Agosto de 2009 10:40:46 > >>>Assunto: Re: Res: Res: [shell-script] Problema com tail -f e > redirecionamento para arquivo > >>> > >>> > > >>> > >>> > >>> > >>> > >>>Como você disse, funciona no bash e no scrip não. Fica difícil eu > >>>>conseguir achar o erro em um script sem conhecê-lo, me desculpe, > mas > >>>>acho que não posso te ajudar com precisaão aqui. > >>> > >>>>Tente, como teste, comentar todas as linha que movem o script ou o > >>>>sobrescrevem. O que costumo fazer é dar um echo nos comandos > suspeitos > >>>>quando estou debugando... > >>> > >>>>No mais, boa sorte. > >>> > >>>>On Thu, 2009-08-27 at 06:35 -0700, Thiago Andrighetti wrote: > >>>>> > >>>>> meu script completo não é necessário, pois o que eu estou > testando é > >>>>> exatamete o que passei na lista, no caso o script seguinte: > >>>>> #!/bin/bash > >>>>> tail -f /var/log/squid/ access.log |cut -d' ' -f11 > texto.txt > >>>>> > >>>>> Se ponho essas linhas em um script e executo, o arquito > texto.txt fica > >>>>> em branco ssemprenã o aparece nada. > >>>>> Agora se eu executo a linha tail -f /var/log/squid/ access.log | > cut > >>>>> -d' ' -f11 > texto.txt no console, ai eu abro > >>>>> um outro terminal e dou um tail -f texto.txt, ai eu vejo que ele > esta > >>>>> sendo incrementado normalmente. > >>>>> > >>>>> Ou seja, quando percebi o que estava acontecendo no meu script > >>>>> original, fiz esse script para testar, e o mesmo problema que > acontece > >>>>> no meu script, acontece nesse > >>>>> > >>>>> -- > >>>>> Thiago Andrighetti > >>>>> Analista de Suporte e
Re: Res: Res: Res: Res: Res: [shell-script] Problema com tail -f e redirecionamento para arquivo
Estranho, pois aqui cometi esse erro sem querer e o bash me informou que havia um símbolo inesperado. A sintax fica errada... --- Em qui, 27/8/09, Thiago Andrighetti escreveu: De: Thiago Andrighetti Assunto: Res: Res: Res: Res: Res: [shell-script] Problema com tail -f e redirecionamento para arquivo Para: shell-script@yahoogrupos.com.br Data: Quinta-feira, 27 de Agosto de 2009, 11:28 Nossa, não sei o por que, mas resolvi, só dei um espaço entre o -f11 e o > e o texto.txt tail -f /var/log/squid/ access.log |cut -d' ' -f11[espaço]> >[espaco] texto.txt Não sei por que, mas funcionou -- Thiago Andrighetti Analista de Suporte em Software Livre e Programador www.thiagoapadua. com.br > >De: Bruno Gunter >Para: shell-script@ yahoogrupos. com.br >Enviadas: Quinta-feira, 27 de Agosto de 2009 11:11:24 >Assunto: Re: Res: Res: Res: Res: [shell-script] Problema com tail -f e >redirecionamento para arquivo > > > > > > > >Me cola uma linha completa do log do squid... Acho que podemos tentar um >>sed ou awk aí. essa sua máquina é um BSD ou Linux? > >>On Thu, 2009-08-27 at 07:06 -0700, Thiago Andrighetti wrote: >>> >>> Acabei de fazer um teste, se eu tiro o comando cut, deixando o tail >>> direto para o arquivo ele funciona normalmente, como a seguir: >>> tail -f /var/log/squid/ access.log >> texto.txt >>> >>> -- >>> Thiago Andrighetti >>> Analista de Suporte em Software Livre >>> e Programador >>> www.thiagoapadua. com.br >>> >>> > >>> >De: Thiago Andrighetti >>> >Para: shell-script@ yahoogrupos. com.br >>> >Enviadas: Quinta-feira, 27 de Agosto de 2009 11:01:21 >>> >Assunto: Res: Res: Res: [shell-script] Problema com tail -f e >>> redirecionamento para arquivo >>> > >>> > > >>> > >>> > >>> > >>> > >>> >Me desculpe, mas acho que não me expressei direito. segue meu script. >>> > >>> >>#!/bin/bash >>> >>tail -f /var/log/squid/ access.log |cut -d' ' -f11 >> texto.txt >>> > >>> >>Objetivo: Fazer o texto.txt ir sendo incrementado com os sites >>> acessados pelo squid. >>> > >>> >>-- >>> >>Thiago Andrighetti >>> >>Analista de Suporte em Software Livre >>> >>e Programador >>> >>www.thiagoapadua. com.br >>> > >>> >>> >>> >>>De: Bruno Gunter >>> >>>Para: shell-script@ yahoogrupos. com.br >>> >>>Enviadas: Quinta-feira, 27 de Agosto de 2009 10:40:46 >>> >>>Assunto: Re: Res: Res: [shell-script] Problema com tail -f e >>> redirecionamento para arquivo >>> >>> >>> >>> > >>> >>> >>> >>> >>> >>> >>> >>> >>> >>>Como você disse, funciona no bash e no scrip não. Fica difícil eu >>> conseguir achar o erro em um script sem conhecê-lo, me desculpe, >>> mas >>> acho que não posso te ajudar com precisaão aqui. >>> >>> >>> Tente, como teste, comentar todas as linha que movem o script ou o >>> sobrescrevem. O que costumo fazer é dar um echo nos comandos >>> suspeitos >>> quando estou debugando... >>> >>> >>> No mais, boa sorte. >>> >>> >>> On Thu, 2009-08-27 at 06:35 -0700, Thiago Andrighetti wrote: >>> > >>> > meu script completo não é necessário, pois o que eu estou >>> testando é >>> > exatamete o que passei na lista, no caso o script seguinte: >>> > #!/bin/bash >>> > tail -f /var/log/squid/ access.log |cut -d' ' -f11 > texto.txt >>> > >>> > Se ponho essas linhas em um script e executo, o arquito >>> texto.txt fica >>> > em branco ssemprenã o aparece nada. >>> > Agora se eu executo a linha tail -f /var/log/squid/ access.log | >>> cut >>> > -d' ' -f11 > texto.txt no console, ai eu abro >>> > um outro terminal e dou um tail -f texto.txt, ai eu vejo que ele >>> esta >>> > sendo incrementado normalmente. >>> > >>> > Ou seja, quando percebi o que estava acontecendo no meu script >>> > original, fiz esse script para testar, e o mesmo problema que >>> acontece >>> > no meu script, acontece nesse >>> > >>> > -- >>> > Thiago Andrighetti >>> > Analista de Suporte em Software Livre >>> > e Programador >>> > www.thiagoapadua. com.br >>> > >>> > > >>> > >De: Bruno Gunter >>> > >Para: shell-script@ yahoogrupos. com.br >>> > >Enviadas: Quinta-feira, 27 de Agosto de 2009 9:59:07 >>> > >Assunto: Re: Res: [shell-script] Problema com tail -f e >>> > redirecionamento para arquivo >>> > > >>> > > > >>> > > >>> > > >>> > > >>> > > >>> > >Se não é apenas isso, cola teu script completo, que aí fica >>> mais >>> > fácil >>> > >>da gente achar o que é. >>> > > >>> > >>[]'s >>> > > >>> > >>On Thu, 2009-08-27 at 05:08 -0700, Thiago Andrighetti wrote: >>> > >>> >>> > >>> Ol[a Bruno e Marcos, obrigado por responderem. >>> > >>> Esse script que mandei foi somente para demonstrar o >>> problema, meu >>> > >>> script eh bem maior. Ai eu fiz esse soh para testa
(RESOLVIDO) [shell-script] Problema com tail -f e redirecionamento para arquivo (RESOLVIDO)
--- Em qui, 27/8/09, Wagner Brasileiro escreveu: De: Wagner Brasileiro Assunto: Re: Res: Res: Res: Res: Res: [shell-script] Problema com tail -f e redirecionamento para arquivo (RESOLVIDO) Para: shell-script@yahoogrupos.com.br Data: Quinta-feira, 27 de Agosto de 2009, 13:14 consegui resolver usando trap desta forma. #!/bin/bash trap "cut -f2 < /tmp/$$>>texto. txt ; exit" 0 1 2 tail -f /var/log/messages >> /tmp/$$ O problema é que, qaundo rodava o script, sua execução ficava presa no tail e qaundo dava um Ctrl+C ele perdia tudo sem gravar, usando o trap ele garva o resultado antes de sair, só não testei se realmente precisava usar o arquivo tmp do pip do processo ou se podia fazer direto. OBS. Sei que meu CUT está diferente do seu, só o usei para testar o filtro pois usamos arquivos diferentes como exemplo, mas deve funcionar com qq opção. Sei que deve ter outra forma amsi simples de resolver isso --- Em qui, 27/8/09, Wagner Brasileiro escreveu: De: Wagner Brasileiro Assunto: Re: Res: Res: Res: Res: Res: [shell-script] Problema com tail -f e redirecionamento para arquivo Para: shell-script@ yahoogrupos. com.br Data: Quinta-feira, 27 de Agosto de 2009, 11:56 Estranho, pois aqui cometi esse erro sem querer e o bash me informou que havia um símbolo inesperado. A sintax fica errada... --- Em qui, 27/8/09, Thiago Andrighetti escreveu: De: Thiago Andrighetti Assunto: Res: Res: Res: Res: Res: [shell-script] Problema com tail -f e redirecionamento para arquivo Para: shell-script@ yahoogrupos. com.br Data: Quinta-feira, 27 de Agosto de 2009, 11:28 Nossa, não sei o por que, mas resolvi, só dei um espaço entre o -f11 e o > e o texto.txt tail -f /var/log/squid/ access.log |cut -d' ' -f11[espaço]> >[espaco] texto.txt Não sei por que, mas funcionou -- Thiago Andrighetti Analista de Suporte em Software Livre e Programador www.thiagoapadua. com.br > >De: Bruno Gunter >Para: shell-script@ yahoogrupos. com.br >Enviadas: Quinta-feira, 27 de Agosto de 2009 11:11:24 >Assunto: Re: Res: Res: Res: Res: [shell-script] Problema com tail -f e >redirecionamento para arquivo > > > > > > > >Me cola uma linha completa do log do squid... Acho que podemos tentar um >>sed ou awk aí. essa sua máquina é um BSD ou Linux? > >>On Thu, 2009-08-27 at 07:06 -0700, Thiago Andrighetti wrote: >>> >>> Acabei de fazer um teste, se eu tiro o comando cut, deixando o tail >>> direto para o arquivo ele funciona normalmente, como a seguir: >>> tail -f /var/log/squid/ access.log >> texto.txt >>> >>> -- >>> Thiago Andrighetti >>> Analista de Suporte em Software Livre >>> e Programador >>> www.thiagoapadua. com.br >>> >>> > >>> >De: Thiago Andrighetti >>> >Para: shell-script@ yahoogrupos. com.br >>> >Enviadas: Quinta-feira, 27 de Agosto de 2009 11:01:21 >>> >Assunto: Res: Res: Res: [shell-script] Problema com tail -f e >>> redirecionamento para arquivo >>> > >>> > > >>> > >>> > >>> > >>> > >>> >Me desculpe, mas acho que não me expressei direito. segue meu script. >>> > >>> >>#!/bin/bash >>> >>tail -f /var/log/squid/ access.log |cut -d' ' -f11 >> texto.txt >>> > >>> >>Objetivo: Fazer o texto.txt ir sendo incrementado com os sites >>> acessados pelo squid. >>> > >>> >>-- >>> >>Thiago Andrighetti >>> >>Analista de Suporte em Software Livre >>> >>e Programador >>> >>www.thiagoapadua. com.br >>> > >>> >>> >>> >>>De: Bruno Gunter >>> >>>Para: shell-script@ yahoogrupos. com.br >>> >>>Enviadas: Quinta-feira, 27 de Agosto de 2009 10:40:46 >>> >>>Assunto: Re: Res: Res: [shell-script] Problema com tail -f e >>> redirecionamento para arquivo >>> >>> >>> >>> > >>> >>> >>> >>> >>> >>> >>> >>> >>> >>>Como você disse, funciona no bash e no scrip não. Fica difícil eu >>> >>>>conseguir achar o erro em um script sem conhecê-lo, me desculpe, >>> mas >>> >>>>acho que não posso te ajudar com precisaão aqui. &
Re: Res: Res: Res: Res: Res: [shell-script] Problema com tail -f e redirecionamento para arquivo (RESOLVIDO)
consegui resolver usando trap desta forma. #!/bin/bash trap "cut -f2 < /tmp/$$>>texto.txt ; exit" 0 1 2 tail -f /var/log/messages >> /tmp/$$ O problema é que, qaundo rodava o script, sua execução ficava presa no tail e qaundo dava um Ctrl+C ele perdia tudo sem gravar, usando o trap ele garva o resultado antes de sair, só não testei se realmente precisava usar o arquivo tmp do pip do processo ou se podia fazer direto. OBS. Sei que meu CUT está diferente do seu, só o usei para testar o filtro pois usamos arquivos diferentes como exemplo, mas deve funcionar com qq opção. Sei que deve ter outra forma amsi simples de resolver isso --- Em qui, 27/8/09, Wagner Brasileiro escreveu: De: Wagner Brasileiro Assunto: Re: Res: Res: Res: Res: Res: [shell-script] Problema com tail -f e redirecionamento para arquivo Para: shell-script@yahoogrupos.com.br Data: Quinta-feira, 27 de Agosto de 2009, 11:56 Estranho, pois aqui cometi esse erro sem querer e o bash me informou que havia um símbolo inesperado. A sintax fica errada... --- Em qui, 27/8/09, Thiago Andrighetti escreveu: De: Thiago Andrighetti Assunto: Res: Res: Res: Res: Res: [shell-script] Problema com tail -f e redirecionamento para arquivo Para: shell-script@ yahoogrupos. com.br Data: Quinta-feira, 27 de Agosto de 2009, 11:28 Nossa, não sei o por que, mas resolvi, só dei um espaço entre o -f11 e o > e o texto.txt tail -f /var/log/squid/ access.log |cut -d' ' -f11[espaço]> >[espaco] texto.txt Não sei por que, mas funcionou -- Thiago Andrighetti Analista de Suporte em Software Livre e Programador www.thiagoapadua. com.br > >De: Bruno Gunter >Para: shell-script@ yahoogrupos. com.br >Enviadas: Quinta-feira, 27 de Agosto de 2009 11:11:24 >Assunto: Re: Res: Res: Res: Res: [shell-script] Problema com tail -f e >redirecionamento para arquivo > > > > > > > >Me cola uma linha completa do log do squid... Acho que podemos tentar um >>sed ou awk aí. essa sua máquina é um BSD ou Linux? > >>On Thu, 2009-08-27 at 07:06 -0700, Thiago Andrighetti wrote: >>> >>> Acabei de fazer um teste, se eu tiro o comando cut, deixando o tail >>> direto para o arquivo ele funciona normalmente, como a seguir: >>> tail -f /var/log/squid/ access.log >> texto.txt >>> >>> -- >>> Thiago Andrighetti >>> Analista de Suporte em Software Livre >>> e Programador >>> www.thiagoapadua. com.br >>> >>> > >>> >De: Thiago Andrighetti >>> >Para: shell-script@ yahoogrupos. com.br >>> >Enviadas: Quinta-feira, 27 de Agosto de 2009 11:01:21 >>> >Assunto: Res: Res: Res: [shell-script] Problema com tail -f e >>> redirecionamento para arquivo >>> > >>> > > >>> > >>> > >>> > >>> > >>> >Me desculpe, mas acho que não me expressei direito. segue meu script. >>> > >>> >>#!/bin/bash >>> >>tail -f /var/log/squid/ access.log |cut -d' ' -f11 >> texto.txt >>> > >>> >>Objetivo: Fazer o texto.txt ir sendo incrementado com os sites >>> acessados pelo squid. >>> > >>> >>-- >>> >>Thiago Andrighetti >>> >>Analista de Suporte em Software Livre >>> >>e Programador >>> >>www.thiagoapadua. com.br >>> > >>> >>> >>> >>>De: Bruno Gunter >>> >>>Para: shell-script@ yahoogrupos. com.br >>> >>>Enviadas: Quinta-feira, 27 de Agosto de 2009 10:40:46 >>> >>>Assunto: Re: Res: Res: [shell-script] Problema com tail -f e >>> redirecionamento para arquivo >>> >>> >>> >>> > >>> >>> >>> >>> >>> >>> >>> >>> >>> >>>Como você disse, funciona no bash e no scrip não. Fica difícil eu >>> >>>>conseguir achar o erro em um script sem conhecê-lo, me desculpe, >>> mas >>> >>>>acho que não posso te ajudar com precisaão aqui. >>> >>> >>> >>>>Tente, como teste, comentar todas as linha que movem o script ou o >>> >>>>sobrescrevem. O que costumo fazer é dar um echo nos comandos >>> suspeitos >>> >>>>quando estou debugando... >&
Alguém podria comentar a solução se dei a volta ao m undo? [shell-script] Problema com tail -f e redireci onamento para arquivo (RESOLVIDO)
--- Em qui, 27/8/09, Wagner Brasileiro escreveu: De: Wagner Brasileiro Assunto: (RESOLVIDO) [shell-script] Problema com tail -f e redirecionamento para arquivo (RESOLVIDO) Para: shell-script@yahoogrupos.com.br Data: Quinta-feira, 27 de Agosto de 2009, 13:27 --- Em qui, 27/8/09, Wagner Brasileiro escreveu: De: Wagner Brasileiro Assunto: Re: Res: Res: Res: Res: Res: [shell-script] Problema com tail -f e redirecionamento para arquivo (RESOLVIDO) Para: shell-script@ yahoogrupos. com.br Data: Quinta-feira, 27 de Agosto de 2009, 13:14 consegui resolver usando trap desta forma. #!/bin/bash trap "cut -f2 < /tmp/$$>>texto. txt ; exit" 0 1 2 tail -f /var/log/messages >> /tmp/$$ O problema é que, qaundo rodava o script, sua execução ficava presa no tail e qaundo dava um Ctrl+C ele perdia tudo sem gravar, usando o trap ele garva o resultado antes de sair, só não testei se realmente precisava usar o arquivo tmp do pip do processo ou se podia fazer direto. OBS. Sei que meu CUT está diferente do seu, só o usei para testar o filtro pois usamos arquivos diferentes como exemplo, mas deve funcionar com qq opção. Sei que deve ter outra forma amsi simples de resolver isso --- Em qui, 27/8/09, Wagner Brasileiro escreveu: De: Wagner Brasileiro Assunto: Re: Res: Res: Res: Res: Res: [shell-script] Problema com tail -f e redirecionamento para arquivo Para: shell-script@ yahoogrupos. com.br Data: Quinta-feira, 27 de Agosto de 2009, 11:56 Estranho, pois aqui cometi esse erro sem querer e o bash me informou que havia um símbolo inesperado. A sintax fica errada... --- Em qui, 27/8/09, Thiago Andrighetti escreveu: De: Thiago Andrighetti Assunto: Res: Res: Res: Res: Res: [shell-script] Problema com tail -f e redirecionamento para arquivo Para: shell-script@ yahoogrupos. com.br Data: Quinta-feira, 27 de Agosto de 2009, 11:28 Nossa, não sei o por que, mas resolvi, só dei um espaço entre o -f11 e o > e o texto.txt tail -f /var/log/squid/ access.log |cut -d' ' -f11[espaço]> >[espaco] texto.txt Não sei por que, mas funcionou -- Thiago Andrighetti Analista de Suporte em Software Livre e Programador www.thiagoapadua. com.br > >De: Bruno Gunter >Para: shell-script@ yahoogrupos. com.br >Enviadas: Quinta-feira, 27 de Agosto de 2009 11:11:24 >Assunto: Re: Res: Res: Res: Res: [shell-script] Problema com tail -f e >redirecionamento para arquivo > > > > > > > >Me cola uma linha completa do log do squid... Acho que podemos tentar um >>sed ou awk aí. essa sua máquina é um BSD ou Linux? > >>On Thu, 2009-08-27 at 07:06 -0700, Thiago Andrighetti wrote: >>> >>> Acabei de fazer um teste, se eu tiro o comando cut, deixando o tail >>> direto para o arquivo ele funciona normalmente, como a seguir: >>> tail -f /var/log/squid/ access.log >> texto.txt >>> >>> -- >>> Thiago Andrighetti >>> Analista de Suporte em Software Livre >>> e Programador >>> www.thiagoapadua. com.br >>> >>> > >>> >De: Thiago Andrighetti >>> >Para: shell-script@ yahoogrupos. com.br >>> >Enviadas: Quinta-feira, 27 de Agosto de 2009 11:01:21 >>> >Assunto: Res: Res: Res: [shell-script] Problema com tail -f e >>> redirecionamento para arquivo >>> > >>> > > >>> > >>> > >>> > >>> > >>> >Me desculpe, mas acho que não me expressei direito. segue meu script. >>> > >>> >>#!/bin/bash >>> >>tail -f /var/log/squid/ access.log |cut -d' ' -f11 >> texto.txt >>> > >>> >>Objetivo: Fazer o texto.txt ir sendo incrementado com os sites >>> acessados pelo squid. >>> > >>> >>-- >>> >>Thiago Andrighetti >>> >>Analista de Suporte em Software Livre >>> >>e Programador >>> >>www.thiagoapadua. com.br >>> > >>> >>> >>> >>>De: Bruno Gunter >>> >>>Para: shell-script@ yahoogrupos. com.br >>> >>>Enviadas: Quinta-feira, 27 de Agosto de 2009 10:40:46 >>> >>>Assunto: Re: Res: Res: [shell-script] Problema com tail -f e >>> redirecionamento para arquivo >>> >>> >>> >>> > >>> >>> >>> >>> >>> >>> >>> >>>
[shell-script] Auxilio Variáveis em funcao
Não analisei a fundo seu script, mas me parece que é problema de exportação. Em Bash a única maneira de trocar valores entre variáveis de função que eu saiba é exportando-as como comando "export" Atenciosamente, Wagner Brasileiro Veja quais são os assuntos do momento no Yahoo! +Buscados http://br.maisbuscados.yahoo.com [As partes desta mensagem que não continham texto foram removidas]
Res: [shell-script] Problemas ssh
Se bem entendi, seu problema não me parece script e sim administrativo. Primeiramente não consigo visualizar para que precisaria fazer ssh simultâneo em 100 máquinas, mas supondo que precise fazer algo aproveitando o tunelamento e transferir arquivos por exemplo... O SSH pré-supõe que vá utilizar o terminal, por isso ele está segurando a conexão. O que me ocorre de imediato é: ou abre vários terminais ou vai jogando todo mundo para backgroud, use o "&" no final do ssh, porém não testei se qualquer processo que rode depois de estabelecer a conexão vai rodar, como envio de arquivos por exemplo. Se quer automatizar tanto esses sshs a ponto de usar vetores na abertura das conexões, vale lembrar que os processos que for desenvolver dentro desta conexão também devem ser capazes de serem automatizados no mesmo nível, como no caso de transferência de arquivos, ou fatalmente vai depender de intervenção humana. De: Luiz guilherme Nunes Fernandes Para: turma shell Enviadas: Quinta-feira, 27 de Maio de 2010 12:00:56 Assunto: [shell-script] Problemas ssh Prezados, tudo bem? Estou com o seguinte problema, montei um script, que não funciona corretamente, gostaria que ele fizessse conexão ssh entre umas 100 máquinas aproximadamente. Dentro dos vetores eu iria adicionando os ips de minha rede, os servidores já possuem chaves assimétricas. Gostaria que ele conectasse um por um deles e desconectassem, como seria para eu desconectar no servidor com o próprio script na máquina local. Quando ele se conecta ao primeiro ip, ele não fecha a coneção do ssh. #!/bin/bash #Desenvolvido por Luiz Guilherme Nunes Fernandes rddez="10.10." rdcnd="192.168." #Rede 10.10.0.0 vetor=("$rddez"190.10 "$rddez"190.12) #Rede 192.168.0.0 array=("$rdcnd"10.2 "$rdcnd"10.3) echo "###" ## Rede 10.10 ## cont=${#vetor[*]} zero=0 while [ $zero -lt $cont ]; do echo ${vetor[$zero]} ssh r...@${vetor[$zero]} df && echo && free -m && echo exit zero=$[zero + 1] echo "###" done # Rede 192.168 # contt=${#array[*]} inicial=0 while [ $inicial -lt $contt ]; do echo ${array[$inicial]} ssh r...@{array[$inicial]} df && echo && free -m && echo exit inicial=$[inicial + 1] echo "###" done Att. Luiz Guilherme Nunes Fernandes [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas]
Res: [shell-script] Problemas ssh
Não havia prestado atenção neste detalhe, levando isso em conta, creio que esse resultado vá morrer com o fechamento do SSH. A menos que jogue o resultado em um arquivo e transfira via RCP ou envie por e-mail, mas pelo que eu entendo, o script não vai colher automaticamente os resultados da sessão SSH. De: Thiago Diniz da Silveira Para: shell-script@yahoogrupos.com.br Enviadas: Quinta-feira, 27 de Maio de 2010 14:53:10 Assunto: Re: [shell-script] Problemas ssh Pelo que eu entendi era um script que entrava nas máquinas olhava quanto de memória tinha e espaço livre.. só isso né? Luiz, Qual solução funcionou? Em 27 de maio de 2010 13:08, Luiz guilherme Nunes Fernandes < spinal...@yahoo.com.br> escreveu: > > > Opa blz, já tentei, não funcionou. > > T+ > > --- Em qui, 27/5/10, Thiago Diniz da Silveira > > > escreveu: > > De: Thiago Diniz da Silveira > > > Assunto: Re: [shell-script] Problemas ssh > Para: shell-script@yahoogrupos.com.br > Data: Quinta-feira, 27 de Maio de 2010, 12:57 > > > > > Talvez colocando no final um && exit > > não funciona? > > Em 27 de maio de 2010 12:25, Fabricio Candido > > >escreveu: > > > Luiz, bom dia. > > > > > > Isso nao seria bem shell mas como vc esta usando ssh, Uma sugestão: mude > > > as linhas: > > > > > > ssh r...@${vetor[$zero]} > > > df && echo && free -m && echo > > > exit > > > > > > por: > > > > > > ssh r...@${vetor[$zero]} "df && echo && free -m && echo" > > > > > > > > > Att. > > > > > > Fabricio Candido > > > > > > 2010/5/27 Luiz guilherme Nunes Fernandes > > > > > > > > > > > > > > > > > > > Prezados, tudo bem? > > > > > > > > Estou com o seguinte problema, montei um script, que não funciona > > > > corretamente, gostaria que ele fizessse conexão ssh entre umas 100 > > > máquinas > > > > aproximadamente. Dentro dos vetores eu iria adicionando os ips de minha > > > > rede, os servidores já possuem chaves assimétricas. Gostaria que ele > > > > conectasse um por um deles e desconectassem, como seria para eu > > > desconectar > > > > no servidor com o próprio script na máquina local. Quando ele se > conecta > > > ao > > > > primeiro ip, ele não fecha a coneção do ssh. > > > > > > > > #!/bin/bash > > > > > > > > #Desenvolvido por Luiz Guilherme Nunes Fernandes > > > > > > > > rddez="10.10." > > > > rdcnd="192.168." > > > > > > > > #Rede 10.10.0.0 > > > > vetor=("$rddez"190.10 "$rddez"190.12) > > > > > > > > #Rede 192.168.0.0 > > > > array=("$rdcnd"10.2 "$rdcnd"10.3) > > > > > > > > echo "###" > > > > > > > > > > > > ## Rede 10.10 ## > > > > > > > > > > > > cont=${#vetor[*]} > > > > zero=0 > > > > while [ $zero -lt $cont ]; do > > > > echo ${vetor[$zero]} > > > > ssh r...@${vetor[$zero]} > > > > df && echo && free -m && echo > > > > exit > > > > zero=$[zero + 1] > > > > echo "###" > > > > done > > > > > > > > > > > > # Rede 192.168 # > > > > > > > > > > > > contt=${#array[*]} > > > > inicial=0 > > > > while [ $inicial -lt $contt ]; do > > > > echo ${array[$inicial]} > > > > ssh r...@{array[$inicial]} > > > > df && echo && free -m && echo > > > > exit > > > > inicial=$[inicial + 1] > > > > echo "###" > > > > done > > > > > > > > Att. > > > > Luiz Guilherme Nunes Fernandes > > > > > > > > [As partes desta mensagem que não continham texto foram removidas] > > > > > > > > > > > > > > > > > > > > > [As partes desta mensagem que não continham texto foram removidas] > > > > > > > > > > > > > > > > > > -- > > > Esta lista não admite a abordagem de outras liguagens de programação, > como > > > perl, C etc. Quem insistir em não seguir esta regra será moderado sem > prévio > > > aviso. > > > -- > > > Sair da lista: > > shell-script-unsubscr...@yahoogrupos.com.br > > > -- > > > Esta lista é moderada de acordo com o previsto em > > > http://www.listas-discussao.cjb.net > > > -- > > > Servidor Newsgroup da lista: news.gmane.org > > > Grupo: gmane.org.user-groups.programming.shell.brazil > > > > > > Links do Yahoo! Grupos > > > > > > > > > > > [As partes desta mensagem que não continham texto foram removidas] > > [As partes desta mensagem que não continham texto foram removidas] > > > [As partes desta mensagem que não continham texto foram removidas] - Esta lista não admite a abordagem de outras liguagens de programação, como perl, C etc. Quem insistir em não seguir esta regra será moderado sem prévio aviso. -
[shell-script] executar CGI Bash em servidor apache
Boa tarde, Estou com problemas para executar o script a baixo que fica numa hospedagem Linux na Locaweb, eles alegam que no servidor está tudo ok, os logs não me mostram nada de errado quanto a este problema. Se executar o index.cgi dentro do diretório dele ou mesmo o chamar na munheca via ssh de dentro do diretório onde está o index.html ele funciona numa boa e faz o que eu esperava, inclusive faz o que eu nem previ que é listar o diretório de onde eu o chamo e não de onde ele está sendo executado, pensei que tivesse que tratar isso ainda mas para minha surpresa funcionou de cara, agora se eu o chamar através de html nada acontece. Gostaria de saber se estou cometendo algum erro no CGI, ou se preciso esperar algum retorno do CGI para que ele me monte o arquivo html que eu espero. Já testei sem os "/n" que incluí por último na base do chute. Espero que não seja considerado off-topic já que o assunto consta no livro do Julio. Arquivo HTML que chama o index.cgi Área de Download do CPG Index.cgi == #!/bin/bash echo"content-type: text/html\n\n" echo"" echo "Área de Download do CPG\n" echo "\n" echo"Listagem dos arquivos para download do diretório `pwd` - CPG\n" echo"" echo "=INÍCIO=\n" for LS in * do echo "\n" |grep -v index.html done echo"" echo"==FIM ==\n" echo `date +%A" - "%d" de "%B" de "%G" às "%H":"%M` echo "\n" echo "\n" [As partes desta mensagem que não continham texto foram removidas]
Res: [shell-script] Re: Expressão Regular Co m SED
Acho que eu não entendi direito, Se é só enumerar as linhas só fazer o redirecionamento diretamente da saída do "cat -n" já não seria o suficiente!? Wagner Brasileiro De: Jonathan dos Santos Lessa Para: shell-script@yahoogrupos.com.br Enviadas: Quarta-feira, 30 de Junho de 2010 6:53:45 Assunto: Re: [shell-script] Re: Expressão Regular Com SED Se sua intensão for somente enumerar as linha o "cat -n" faz isso, assim se vc quer utilizar seu AWK para depois enumerar as linhas pode utilizar awk '{ print substr ($1,1,8)}' arquivo.txt | cat -n > arqnovo.txt - Original Message - From: fsilva6 To: shell-script@yahoogrupos.com.br Sent: Tuesday, June 29, 2010 9:37 PM Subject: [shell-script] Re: Expressão Regular Com SED Muito Obrigado a todos pela ajuda!!! Agora pintou outra duvida, montei esse comando com SED cujo objetivo é enumerar cada linha de um arquivo. FILE | sed 'N;s/\n/\t/' Por exemplo tenho o arquivo XPTO.txt com as seguintes informações: Flamengo é o melhor time do Brasil Flamengo é o melhor time do Brasil Flamengo é o melhor time do Brasil Flamengo é o melhor time do Brasil Flamengo é o melhor time do Brasil O que o comando faz é enumerar cada linha Flamengo é o melhor time do Brasil 1 Flamengo é o melhor time do Brasil 2 Flamengo é o melhor time do Brasil 3 Flamengo é o melhor time do Brasil 4 Flamengo é o melhor time do Brasil 5 Não conheço muito de AWK, vocês poderiam me informar se é possível usar o comando sed apresentado acima em conjunto com o AWK que estou montando. Abaixo o AWK que estou montando. awk '{ print substr ($1,1,8)}' arquivo.txt > arqnovo.txt Existe uma forma mais elegante de enumerar as linhas através do AWK? --- Em shell-script@yahoogrupos.com.br, Moacir Souza escreveu > > É, > > O sed no AIX é totalmente POSIX, i.e., não aceita os atalhos que > estamos acostumados a usar no Linux. A solução é essa do Fernando, > embora você possa usar o "grep -E" no AIX, se a necessidade é só > filtrar a linha do número decimal em questão. E por fim, a resposta é > não, o sed do AIX não suporta a opção -r =). > > []'s, > Moacir Filho > > -- > =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= > Moacir da Cruz Souza Filho > > -Analista de Sistemas: Suporte Unix Avançado > Serviço Federal de Processamento de Dados > > -Mestrando em Ciências da Computação > Universidade de Brasília > > -Bacharel em Engenharia da Computação > Escola Politécnica de Pernambuco > Universidade de Pernambuco > > -Técnico em Eletrônica > Escola Técnica Federal de Pernambuco > > -Linux user #449600 > =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= > [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas]
Res: [shell-script] executar CGI Bash em servidor apache
MrBits, Me desculpe pela demora e por não ter postado o código pelo Pastebin, além de não conhecer e ferramenta, encarei como uma sugestão apenas e meu muito obrigado pelo seu empenho mesmo assim. Me enrolei com outras coisas aqui e por isso só agora estou voltando a postar sobre ele. Agora postado no Pastebin: http://pastebin.com/f4yci2A0 (rs...) Voltei a verificar os logs do servidor e nada aparece, porém consegui evoluir, se eu chamar o script via página html diretamente assim: meusite/cgi-local/script.cgi ele resposde. Algumas anomalias porém eu ainda estou encontrando, talvez pela minha falta de experiência, são elas: 1- Se na linha "2. content-type: text/plain" eu declarar asim como plain, ele me dá um resultado bem próximo do que eu quero e do que ele tem me mostrado aqui quando o executo diretamente via SSH como usuário local, mas com um problema, ele me injeta o resultado em texto plano, como se fosse um relatório. Se eu mudo para HTML ele me come os resultados do código dentro do "for" entre as linhas 15 e 19 e nada em html é impresso dentro do "for". Achei que fosse aluma aspa aberta pois o próprio VI me mostrava dependnedo do caso que o loop estava aberto, mesmo qaundo ele mostra fechado nada acontece. 2- Como o cgi só roda dentro diretório CGI ele roda sempre com status local, diferentemente de quando o executo via SSH que o chamo de outro diretório e ele faz referência ao diretório de onde eu o chamei, no caso de comandos como PWD ele sempre estará no diretório CGI. pensei em passar algum parâmetro via POST ou GET, mas neste ponto o HTML ainda não aceita os comandos do script e não estou visualizando uma maneira de fazer isso dinamicamente, sem ter que enviar uma constante, o que me tiraria o dinamismo do script tendo que o reescrever para cada lugar que fosse utilizar o deixando fadado ao erro e desuso. Mais uma vez meu muito obrigado pela atenção, mesmo na minha falha de não ter postado o código pelo pastebin. De: MrBiTs Para: shell-script@yahoogrupos.com.br Enviadas: Quarta-feira, 30 de Junho de 2010 11:16:10 Assunto: Re: [shell-script] executar CGI Bash em servidor apache > Ele me parece funcionar perfeitamente quando o testo via SSH o chamando > diretamente, já quando o chamo via CGI através do HTML que nada acontece, os > logs do servidor não me mostram nada quanto a isso. Ele injeta via terminal o > código HTML e a saída que eu desejo, minha grande dúvida é se, via CGI só > imprimir o arquivo de saída com código HTML é o suficiente ou se existe algo a > mais na comunicação via CGI, ou seja, para pasar dados via CGI sei que tenho >que > usar o método GET ou POST e colher essas informações no script, no meu caso não > troco informações ao executé-lo, ainda assim o que ele vai printar na saída é > automático ou existe alguma forma especial de se fazer isso? > De qualquer forma, acho melhor terminar essa postagem por aqui, antes que >alguém > encare isso como off-topic, pensei muito antes de enviar esta dúvida, e ainda > creio que seja de shell mas vou procurar fora. Obrigado a todos! Apesar do fato de você ter ignorado totalmente a minha recomendação de postar seu código num paste-bin da vida, para que pudessemos auxiliá-lo no debug do seu problema, eu consegui gerar um erro aqui, que me informou que há bad headers no seu script. Em outras palavras, seu CGI está mal construído. Você faz: echo "content-type: text\html\n\n" mas o echo não sabe interpretar esse \n e, por definição, CGIs têm que ser escritos tendo como primeira linha o tipo do conteúdo seguido de duas linhas em branco. Veja como ficou o meu script: http://pastebin.com/uQrpxiux De lambugem você ainda aprende a trabalhar com pastebin. [As partes desta mensagem que não continham texto foram removidas]
[shell-script] ER
Gerei um arquivo com a listagem de vários subdiretórios onde tenho arquivos MP3 gravados, depois de ter tirado linhas com caracteres do tipo: ".", "..""./" e coisas do tipo ainda haviam linhas como: linhas em branco e outros nomes de diretórios ao qual não queria que houvessem pois precisarei numerar essas linhas e somente as que forem referentes a arquivos para que não fique discrepante a listagem. A seguinte ER abaixo aparentemente funcionou: sed '/[mM][pP][3]/!d' arq_origem>arq_destino, porém gostaria de saber como faria para negar a expressão e não o comando de deletar, já tentei: sed '/(^[mM][pP][3])/!d' arq_origem>arq_destino, sed '/[^mM][pP][3]/!d' arq_origem>arq_destino e ainda numa tentativa já meia desesperada: sed '/[^mM][^pP][^3]/!d' arq_origem>arq_destino e simplesmente nada acontecia. Gostaria de saber como faço para negar uma ER inteira, alguém pode me explicar? Obrigado - Yahoo! Search Música para ver e ouvir: You're Beautiful, do James Blunt [As partes desta mensagem que não continham texto foram removidas]
[shell-script] ER para validar IP
Bom dia, Estou quebranco a cabeça, arrancando meus cabelos para criar uma ER que valide um IP sem contar suas máscaras. Já estava quase terminando quando me passou pela cabeça testar se colocasse algo além do previsto se ela deixava pasar, e passou, ou seja: variavel=999 echo $variavel|egrep '([0-5]){3}' ele barra, se variavel=555 ele aceita, porém se variavel=5559 por exemplo ele também aceita e notei que aí que minha ER stava furada. Claro que amarrei cuidadosamente os limites de uma faixa IP só usei esse exemplo para ilustrar de manera rápida meu problema, que na realidade é aceitar apenas a cadeia e mais nada além dela ao contrário do que eu pensava, os limitadors não funcionam assim, a ER casa com qualquer outra coisa que atenda basicamente a 3 números até cinco cada, desde que tenha esta string dentro. Minha pergunta: Meu erro está na ERR ou na instrução de verificação? Como posso fazer esse limite? Se alguém tiver uma ER dessas prontas eu aceito, o resto do Script eu já fiz, não achei necessário mandá-lo pois não era o foco, mas gostaria mesmo assim de uma explicação no que estou errando, pois até onde eu verifiquei cada bloco isolado da ER completa para validar todas as seqüências válidas de um IP, elas funcionavam, mas quando as juntava num "OU" devido a esse problema elas terminavama aceitando muitas outras coisas. Foquei-me apenas no octeto 254, verificar pra que a ER fizesse todos os teste possíveis para aceitar qq número nesse intervalo ou somente dois algarismos ou apenas um incluindo zero. __ Fale com seus amigos de graça com o novo Yahoo! Messenger http://br.messenger.yahoo.com/ [As partes desta mensagem que não continham texto foram removidas]
Re: [shell-script] ER para validar IP
Obrigado Michel!! Achei aquele código que vc falou, já havia procurado e não tinha encontrado, como comentou dei mais uma olhada e achei, o engraçado é que ele sita validação de IP nos dois guias de consultas rápidas dele mas não mostra propriamente dito. Fiquei meio decepcionado com o exemplo que ele deu do intervalo [0-255], fez parecer que eu estava me matando à toa, mas testei e infelizmente não funciona!!! Meu código final ficou assim: === #!/bin/bash if test $# -gt 1 then echo "$0:Só testo um número IP por vez! Tente novamente" else if test $# -lt 1 then echo "$0:Precisa passar pelo menos um número IP. Tente novamente!" else if echo "."$1"."|egrep '\.(2[0-5][0-4]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[1-9])(\.(2[0-5][0-4]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])){2}\.(2[0-5][0-4]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[1-9])\.' then echo "$0: $1 é um IP válido!!!" else echo "$0: $1 Não é um IP válido" fi fi fi == Sei que tem marretadas como os delimitadores "." que eu tive que incluir no parâmetro que recebo da linha de comando, mas não via outra maneira por hora, se alguém achar alguma falha, ou alguma otimização será bem vinda. Abraço, Wagner Brasileiro "Michel I. Moreira" <[EMAIL PROTECTED]> escreveu: Bom dia Wagner, Nosso amigo Aurelio em seu site tem um exemplo de como fazer isso. De uma olhada lá. www.aurelio.net [ ]'s :qw =) Wagner Brasileiro escreveu: > Bom dia, > > Estou quebranco a cabeça, arrancando meus cabelos para criar uma ER > que valide um IP sem contar suas máscaras. Já estava quase terminando > quando me passou pela cabeça testar se colocasse algo além do previsto > se ela deixava pasar, e passou, ou seja: > > variavel=999 > echo $variavel|egrep '([0-5]){3}' ele barra, se variavel=555 ele > aceita, porém se variavel=5559 por exemplo ele também aceita e notei > que aí que minha ER stava furada. Claro que amarrei cuidadosamente os > limites de uma faixa IP só usei esse exemplo para ilustrar de manera > rápida meu problema, que na realidade é aceitar apenas a cadeia e mais > nada além dela ao contrário do que eu pensava, os limitadors não > funcionam assim, a ER casa com qualquer outra coisa que atenda > basicamente a 3 números até cinco cada, desde que tenha esta string > dentro. Minha pergunta: Meu erro está na ERR ou na instrução de > verificação? Como posso fazer esse limite? > > Se alguém tiver uma ER dessas prontas eu aceito, o resto do Script eu > já fiz, não achei necessário mandá-lo pois não era o foco, mas > gostaria mesmo assim de uma explicação no que estou errando, pois até > onde eu verifiquei cada bloco isolado da ER completa para validar > todas as seqüências válidas de um IP, elas funcionavam, mas quando as > juntava num "OU" devido a esse problema elas terminavama aceitando > muitas outras coisas. Foquei-me apenas no octeto 254, verificar pra > que a ER fizesse todos os teste possíveis para aceitar qq número nesse > intervalo ou somente dois algarismos ou apenas um incluindo zero. > > __ > Fale com seus amigos de graça com o novo Yahoo! Messenger > http://br.messenger.yahoo.com/ <http://br.messenger.yahoo.com/> > > [As partes desta mensagem que não continham texto foram removidas] > > __ Fale com seus amigos de graça com o novo Yahoo! Messenger http://br.messenger.yahoo.com/ [As partes desta mensagem que não continham texto foram removidas]
[shell-script] Barra de progressão
Bom dia pessoal, Estou querendo montar uma barra de progressão e estou pensando em me basear no comando time, junto com um loop, mas não me vem na cabeça a forma exata de amarrar isso para ter o status do andamento. Esse script em particular trata de um backup que vou montar mas como criar a relação entre o que já foi feito e o que falta? Enquanto escrevia essas linhas, li um exemplo que me clareou as idéias, pois na realidade minha dúvida era como enfiar qq coisa no loop enquanto o processo está preso, e aí o cara deu um exemplo para trabalhar jogando o processo para o fundo, imprimindo algo na tela e o recuperando novamente. Mas ainda assim gostaria de saber se alguém conhece a forma de calcular o tempo total, ou a conta seria mesmo calcular o total em GB o tempo gasto em cada passada e ir refazendo a conta a cada vez que ele entrar no loop!? Creio que isso seja o mais próximo que dê para chegar de uma estimativa atualizável de progressão de tempo e tempo restante... O cálculo total do tamanho penso em fazer listando todo diretório para um arquivo de saída e lendo a coluna de tamanho e somando para posteriormente pedir ao script para copiar cada arquivo desse. Obrigado desde já. Wagner Brasileiro
RES: [shell-script] Barra de progressão
Pode ser tb, mas creio que de qq forma precisarei da relação completa dos nomes, pois quero tentar fazer um controle do que foi copiado e o que ficou para trás, meus usuários aqui vivem com arquivos abertos e assim posso mandar os arquivos que não foram copiados um a um para uma outra lista e tentar novamente ao término e ficar persistindo, ao final deste processo posso mandar o servidor de arquivos se desligar. -Mensagem original- De: shell-script@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] nome de Tiago Moreira Rodrigues Enviada em: sexta-feira, 18 de julho de 2008 13:40 Para: shell-script@yahoogrupos.com.br Assunto: Re: [shell-script] Barra de progressão Cara, pra pegar o tamanho acho que voce poderia usar o du -hs ./ -s, --summarize display only a total for each argument 2008/7/18 Wagner Brasileiro Cardoso <[EMAIL PROTECTED]>: > > Bom dia pessoal, > > Estou querendo montar uma barra de progressão e estou pensando em me basear > no comando time, junto com um loop, mas não me vem na cabeça a forma exata > de amarrar isso para ter o status do andamento. Esse script em particular > trata de um backup que vou montar mas como criar a relação entre o que já > foi feito e o que falta? > > Enquanto escrevia essas linhas, li um exemplo que me clareou as idéias, > pois > na realidade minha dúvida era como enfiar qq coisa no loop enquanto o > processo está preso, e aí o cara deu um exemplo para trabalhar jogando o > processo para o fundo, imprimindo algo na tela e o recuperando novamente. > Mas ainda assim gostaria de saber se alguém conhece a forma de calcular o > tempo total, ou a conta seria mesmo calcular o total em GB o tempo gasto em > cada passada e ir refazendo a conta a cada vez que ele entrar no loop!? > Creio que isso seja o mais próximo que dê para chegar de uma estimativa > atualizável de progressão de tempo e tempo restante... O cálculo total do > tamanho penso em fazer listando todo diretório para um arquivo de saída e > lendo a coluna de tamanho e somando para posteriormente pedir ao script > para > copiar cada arquivo desse. > > Obrigado desde já. > > Wagner Brasileiro > > > -- Tiago Rodrigues http://tiagorodrigues.net [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas]
RES: [shell-script] grep e arquivos
Usa o find, com a opção ok ou exec -Mensagem original- De: shell-script@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] nome de Roberto Alves Enviada em: terça-feira, 21 de outubro de 2008 11:18 Para: shell-script@yahoogrupos.com.br Assunto: Re: [shell-script] grep e arquivos Eduardo, eu to no AIX e vi que o grep tem uma opção -l que serve para mostrar apenas o nome do arquivo pesquisado. Com isso voce poderia apagar os arquivos que procura da seguinte maneira: for i in `grep -l fulano *`; do rm $i ; done Teste o grep antes pra ver se no seu SO ele tem essa opção. abraço, Roberto Alves 2008/10/21 [EMAIL PROTECTED] <[EMAIL PROTECTED]>: > tenho um diretório com 20.000 arquvios. > > grep fulano * = isso irá me dizer quais são os arquivos que tem a > palavra fulano > > como faria para apagar esses arquivos, apenas os que tem a palavra > fulando em seu corpo de texto? > > -- > Esta mensagem foi verificada pelo sistema de antivírus e > acredita-se estar livre de perigo. > > [As partes desta mensagem que não continham texto foram removidas]
RES: [shell-script] Apagar arquivo mais antigo
Simples, só começar a contar os campos de trás para frente. Wagner Brasileiro -Mensagem original- De: shell-script@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] nome de Humberto Cruz Enviada em: quinta-feira, 30 de outubro de 2008 09:36 Para: shell-script@yahoogrupos.com.br Assunto: Re: [shell-script] Apagar arquivo mais antigo ls -t1|xargs|cut -f2 -d" "|xargs rm mas se o nome do arquivo tiver espaço tem q dar uma mexida no codigo pra funcionar, eh q agora n to com mt tempo. []s Humberto 2008/10/30 Eri Ramos Bastos <[EMAIL PROTECTED]>: > $ touch velho; sleep 1m; touch novo > $ ls -ltr > total 0 > -rw-r--r-- 1 ebastos ebastos 0 2008-10-30 09:26 velho > -rw-r--r-- 1 ebastos ebastos 0 2008-10-30 09:27 novo > $ touch mais_novo > $ ls -ltr > total 0 > -rw-r--r-- 1 ebastos ebastos 0 2008-10-30 09:26 velho > -rw-r--r-- 1 ebastos ebastos 0 2008-10-30 09:27 novo > -rw-r--r-- 1 ebastos ebastos 0 2008-10-30 09:28 mais_novo > > []'s > Eri > > 2008/10/30 Eduardo <[EMAIL PROTECTED]>: > >> Tenho um diretório que "normalmente" possui 2 arquivos. >> >> Teria que apagar o mais antigo. Se só existir 1, então, não posso apagar >> nenhum. >> >> Verificar se o arquivo existe é facil, mas como descobrir a "idade" dele? >> >> >> Obrigado >> >> >> [As partes desta mensagem que não continham texto foram removidas] >> >> >> >> >> -- >> Esta lista não admite a abordagem de outras liguagens de programação, como >> perl, C etc. Quem insistir em não seguir esta regra será moderado sem prévio >> aviso. >> -- >> Sair da lista: [EMAIL PROTECTED] >> -- >> Esta lista é moderada de acordo com o previsto em >> http://www.listas-discussao.cjb.net >> -- >> Servidor Newsgroup da lista: news.gmane.org >> Grupo: gmane.org.user-groups.programming.shell.brazil >> >> Links do Yahoo! Grupos >> >> >> > [As partes desta mensagem que não continham texto foram removidas]
RES: [shell-script] Excluir linha de um arquivo usando grep ?
Grep e Cat é redundância se levado em contas um grande número de operações faz diferença. -Mensagem original- De: shell-script@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] nome de Bruno Gunter Fricke Enviada em: quarta-feira, 5 de novembro de 2008 14:43 Para: shell-script@yahoogrupos.com.br Assunto: Re: [shell-script] Excluir linha de um arquivo usando grep ? Que tal: cat arquivo | grep -v "frase" > arquivo - Atenciosamente, Bruno Gunter Fricke On Wed, 2008-11-05 at 17:36 +, pythondeveloper wrote: > Saudações... > > Preciso de uma solução para excluir uma linha de um arquivo.txt, li > que > o comando grep com a opção -v faz isso, mas não estou conseguindo > fazer. > > Estou tentando assim. > $grep -v "frase do dia" arquivo.txt > > Ainda não tive solução, alguma idéia ? > > Obrigado > > > > > > [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas]
RES: [shell-script] Socorrro ....
Calama aê, esse log precisa mesmo ser tão gigante? Não seria mais prudente quebrá-lo de alguma maneira, compactar e armazenar fora deixando o arquivo principal mais leve para ser processado e os dados mais seguros? Wagner Brasileiro Cardoso CPD da SBAC 21 2187-0800 -Mensagem original- De: shell-script@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] nome de rodrigo_ono Enviada em: quarta-feira, 30 de agosto de 2006 12:18 Para: shell-script@yahoogrupos.com.br Assunto: [shell-script] Socorrro Pessoal estou com o seguinte problema: Tenho uma log com aproximadamente 98 linhas que são "engordadas" dia a dia. Estou precisando validar se um processo realmente executou na data de hoje. O trecho que necessito é parecido com este: -- Processed Files Report -- User processing files: cgi Files Processed:41060 Files Searched: 89039 Retried records:842 Failed records: 297203 Start Time: 08/13/06 20:00:00 End Time: 08/13/06 21:55:53 Total Processing Time: 6953 seconds O problema é que dentro desta log tem varios trechos iguais ao citado acima Porem dias anteriores. Preciso verificar se exatamente este processo rodou na data atual ...Sendo preciso pegar os dados exatamente do trecho dos "Processed Files Report". Alguem poderia me dar uma ajuda nisto Obrigado e abraco a todos. Rodrigo - Esta lista não admite a abordagem de outras liguagens de programação, como perl, C etc. Quem insistir em não seguir esta regra será moderado sem prévio aviso. - Sair da lista: [EMAIL PROTECTED] - Esta lista é moderada de acordo com o previsto em http://www.listas-discussao.cjb.net - Servidor Newsgroup da lista: news.gmane.org Grupo: gmane.org.user-groups.programming.shell.brazil Links do Yahoo! Grupos ___ Novidade no Yahoo! Mail: receba alertas de novas mensagens no seu celular. Registre seu aparelho agora! http://br.mobile.yahoo.com/mailalertas/ - Esta lista não admite a abordagem de outras liguagens de programação, como perl, C etc. Quem insistir em não seguir esta regra será moderado sem prévio aviso. - Sair da lista: [EMAIL PROTECTED] - Esta lista é moderada de acordo com o previsto em http://www.listas-discussao.cjb.net - Servidor Newsgroup da lista: news.gmane.org Grupo: gmane.org.user-groups.programming.shell.brazil Links do Yahoo! Grupos <*> Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/shell-script/ <*> Para sair deste grupo, envie um e-mail para: [EMAIL PROTECTED] <*> O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html
RES: [shell-script] Problema em espaço...
Cara, está fugindo totalmente ao propósito desta lista, e amis a mais seu problema é um disco novo, com todo respeito, e como se faz isso eu já te repondi em outra lista, mais apropriada. Wagner Brasileiro -Mensagem original- De: shell-script@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] nome de Rede - Hábil Tecnologia Enviada em: sexta-feira, 29 de setembro de 2006 17:15 Para: shell-script@yahoogrupos.com.br Assunto: [shell-script] Problema em espaço... Gente, agora meu problema aumentou... /dev/sda71012M 1012M 0 100% / mas percebi que dentro do /proc/kcore tem um arquivo de 800 MB, onde penso que é a origem do meu problema... Por favor me ajudem Sandro - Original Message - From: Forum Linux To: shell-script@yahoogrupos.com.br Sent: Thursday, September 28, 2006 9:06 AM Subject: Re: [shell-script] Problema em espaço... Michel Recebi hoje esta msg do forum Dicas-L. Espero que ajude. [] Wagner Cavesso Caçando comedores de disco Colaboração: Domingos Antonio Pereira Creado Quando um volume enche a situação normalmente pega fogo. Se for servidor ainda de arquivos então... E a situação é complicada pois não tem outro jeito se não ser a liberação de espaço, ou removendo arquivos ou movendo para outros volumes. E para ser rápida a operação tem que atacar logo quem está ocupando grandes partes do volume. Costumo normalmente utilizar o seguinte comando: du -s * | sort -rn | head -10 O "du -s *" cria uma lista com os tamanhos e nomes dos objetos no diretório corrente - no caso de diretórios o tamanho dos objetos dentro dele serão somados (parametro "-s") , o "sort -rn" pega a lista gerada pelo du e ordena a primeira coluna na forma numérica (o "-n") e de forma inversa (o parametro "-r") e o "head -10" mostra somente as 10 primeiras linhas. Assim serão retornados os 10 maiores vilões da ocupação do volume. Pode-se incrementar um pouco mais trocando a simples expansão "*" por uma mais seletiva, como por exemplo "/home/d*" para saber qual das contas de usuários que iniciam com "d" estão ocupando mais espaço, ou ainda "/home/d*/*" para saber quais os diretórios das contas dos usuários "d*" estão ocupando maior espaço. Se você vai procurar quem está ocupando mais espaço em sua conta, lembre-se que as expansões acima não incluem os objetos "escondidos" (ou iniciados com "."), até dá para utilizar a expansão ".*" mas ela inclui também o ".." o que não é uma boa. Assim se você vai caçar comedores de disco em uma conta, talvez seja melhor utilizar a construção du -s `ls -A` | sort -rn | head -10 Nessa linha de trocar a expansão por uma lista, o céu torna-se o limite (quer dizer a quantidade de memória). [As partes desta mensagem que não continham texto foram removidas] - Esta lista não admite a abordagem de outras liguagens de programação, como perl, C etc. Quem insistir em não seguir esta regra será moderado sem prévio aviso. - Sair da lista: [EMAIL PROTECTED] - Esta lista é moderada de acordo com o previsto em http://www.listas-discussao.cjb.net - Servidor Newsgroup da lista: news.gmane.org Grupo: gmane.org.user-groups.programming.shell.brazil Links do Yahoo! Grupos ___ Novidade no Yahoo! Mail: receba alertas de novas mensagens no seu celular. Registre seu aparelho agora! http://br.mobile.yahoo.com/mailalertas/ - Esta lista não admite a abordagem de outras liguagens de programação, como perl, C etc. Quem insistir em não seguir esta regra será moderado sem prévio aviso. - Sair da lista: [EMAIL PROTECTED] - Esta lista é moderada de acordo com o previsto em http://www.listas-discussao.cjb.net - Servidor Newsgroup da lista: news.gmane.org Grupo: gmane.org.user-groups.programming.shell.brazil Links do Yahoo! Grupos <*> Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/shell-script/ <*> Para sair deste grupo, envie um e-mail para: [EMAIL PROTECTED] <*> O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html
RES: [shell-script] testar se é numérico
Grande mestre! Ficou nos devendo esse macete, mas valeu assim mesmo. Já sabia do changelog da 6ª edição mas fez um desconto tão camarada para a turma da Uni-Rio que preferi ficar com os dois, mantenho um aqui no trabalho e outro na cabeceira! rs... Vou esperar o changelog da 7º por favor nos avise sem cerimônias, afinal creio que isso seja o assunto principal da lista, sem querer criar polêmica, mas é de interesse de todos. Grande abraço, Wagner Brasileiro -Mensagem original- De: shell-script@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] nome de Julio C. Neves Enviada em: quarta-feira, 22 de novembro de 2006 16:19 Para: shell-script@yahoogrupos.com.br Assunto: Re: [shell-script] testar se é numérico Fala Wagner, a solução que acabei de propor não é usando o operador == mas sim o =~ e neste caso estámos falando em expressão regular do lado direito do operador e assim sendo vc pode limitar o tamanho da variável usando {t1;t2} e ficaria algo como [0-9]{t1,t2} onde t1 é o menor tamanho possível e t2 é o maior. Na 5a. edição não tinha isso e na 6a. bobeei e esqueci de incluir. Pretendo fazê-lo na sétima. Wagner, não precisa comprar a 6a. edição. Em www.julioneves.com tem o changelog da 5a. para a 6a. Basta imprimir umas 50 páginas. Abraços a todos, Julio :wq Em 22/11/06, Wagner Brasileiro Cardoso <[EMAIL PROTECTED]> escreveu: > > Isso de certo funciona mas se pode parametrizar a máscara desta > variável, > pelo menos o tamnanho pode usar o seguinte; > > if [[ $variavel == [0-9] ]] > > echo "É numérico" > > else > > echo "Não numérico" > fi > > Se puder delimitar o tamanho desta variável é melhor para usar diminuir as > linhas de códico, caso contrário terá que fazer algumas linhas a mais para > testar o tamanho da string e criar a ER baseado no tamanho da variável, > para > isso existem várias maneiras possível de código, não vou fazer sem saber > sua > necessidade real,s e precisar avise-me > > Abraço, > > Obs; Para quem tem a quinta edição do livro do Júlio este exemplo está na > página 164, não estou com a sexta edição no momento nas mãos mas a chamada > do índice é: "E tome teste, é só ver em qual página está pois não mudou. > > Wagner Brasileiro > > -Mensagem original- > De: shell-script@yahoogrupos.com.br > [mailto:shell-script@yahoogrupos.com.br]E m > nome de Marcelo Loureiro > Enviada em: quarta-feira, 22 de novembro de 2006 13:35 > Para: shell-script@yahoogrupos.com.br > Assunto: Re: [shell-script] testar se é numérico > > Tiago, tentei dessa forma também e se VAR=1b, por exemplo, esse case diz > que > é numérico. > > O jeito que consegui (até agora) foi tentar somar um valor à variável e > testar o return code. Se conseguiu somar, é numero. Se não conseguiu, > não é número. > > valeu > > 2006/11/22, Tiago Barcellos Peczenyj <[EMAIL PROTECTED] > >: > > > > a melhor forma seria por expressões regulares > > > > case ${VAR} in > > [0-9]*) echo "eh numerica" ;; > > *) echo "nao eh numerica" ;; > > esac > > > > On 11/22/06, Marcelo Loureiro > <[EMAIL PROTECTED] > > > wrote: > > > > > > alguém tem uma função pronta para testar se uma variável é numérica ? > > > > > > > -- > > Tiago B Peczenyj > > Linux User #405772 > > > > # cd /pub > > # more beer > > > > > > [As partes desta mensagem que não continham texto foram removidas] > > -- > Esta lista não admite a abordagem de outras liguagens de programação, como > perl, C etc. Quem insistir em não seguir esta regra será moderado sem > prévio > aviso. > -- > Sair da lista: [EMAIL PROTECTED] > -- > Esta lista é moderada de acordo com o previsto em > http://www.listas-discussao.cjb.net > -- > Servidor Newsgroup da lista: news.gmane.org > Grupo: gmane.org.user-groups.programming.shell.brazil > > Links do Yahoo! Grupos > > > ___ > Novidade no Yahoo! Mail: receba alertas de novas mensagens no seu celular. > Registre seu aparelho agora! > http://br.mobile.yahoo.com/mailalertas/ > > > > -- Abraços, Julio http://www.julioneves.com - Um livro sobre Bash completo e on-line :wq [As partes desta mensagem que não continham texto foram removidas] - Esta lista não admite a abordagem de outras liguagens de programação, como perl, C etc. Quem insistir em não seg
RES: [shell-script] Script com comando Tar
A chave do comando é --exclude=padrão não a testei e não sei como funciona esse padrão, no meu pensamento everia atender a ER aí era só colocar os padrões que não quer como ".[mM][pP][3] ", ".[oO][gG][gG]", ".[mM][pP][gG]", caso contrário crie um micro script que gere a listagem dos arquivos e exclua as linhas com os arquivos que você deseja com o coamndo: ls|sed '/[ER]/!d> lista_dos_arquivos.txt e alimente o TAR com este árquivo como entrada dos arquivos a ser "targeados" Com certeza deve existir uma maneira mais limpa e mais otimizada para fazer isso, mas minha intenção foi lhe ajudar, aceito sugestões para melhorar isso, nem testei para ser sincero! rs... Abraços, Wagner Brasileiro -Mensagem original- De: shell-script@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] nome de isampbr Enviada em: terça-feira, 12 de dezembro de 2006 12:41 Para: shell-script@yahoogrupos.com.br Assunto: [shell-script] Script com comando Tar Olá pessoal, Estive examinando o hostorico desta (e de outras) lista mas ainda nao encontrei uma solução para meu problema: Tenho um servidor Samba e preciso fazer um backup de /home. Ok, até aí tudo bem, mas como faço para EXCLUIR determinados tipos de arquivos ? Por exemplo, quero evitar de copiar *.mp3, *.mpg, *.mpeg, *.ogg e outros ... Preciso tambem EVITAR de copiar um diretório dentro de /home Tentei a opção --exclude=from, mas não funcionou. [As partes desta mensagem que não continham texto foram removidas]
RES: [shell-script] Funções
Não esquecendo que o comando source vai rodar uma instância separada do bash ou do seu interpretador de comandos e se sua função retorna algum valor para o programa que a chamou terá que exportá-la para que seja visível pelo script que a chamou. Um abraço, Wagner Brasileiro -Mensagem original- De: shell-script@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] nome de Tiago Barcellos Peczenyj Enviada em: terça-feira, 23 de janeiro de 2007 14:29 Para: shell-script@yahoogrupos.com.br Assunto: Re: [shell-script] Funções Sim, quem faz isso é o comando source ou '.' #!/bin/bash . arquivo_com_funcoes.sh ... []´s Tiago On 1/23/07, Diogo Júnior <[EMAIL PROTECTED]> wrote: > > Olá pessoal! > > Gostaria de saber se eu posso criar um arquivo contendo algumas funções > feitas por mim, e depois importar esse arquivo em futuros scripts que eu > venha a fazer? > Eu já faço isso com python, mas gostaria de poder fazer também com shell > script. > > Desde já agradeço. > > Diogo Bonfim Pereira Junior > Graduando em Ciências da Computação > __ > Fale com seus amigos de graça com o novo Yahoo! Messenger > http://br.messenger.yahoo.com/ > > [As partes desta mensagem que não continham texto foram removidas] > > > -- Tiago B Peczenyj Linux User #405772 # cd /pub # more beer [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas]
RES: [shell-script] Funções
Com mil perdões lista! Obrigado pela correção Júlio! Inverti totalmente a situação, fui olhar agora no cartão de referência qual era a definição resumida do comando e lá diz: "Executa comandos contidos em um arquivo no ambiente de shell atual" Justamente o contrário do que disse. Aproveitando e pegando carona, existe outra maneira de se fazer uma esécie de #include sem ser pelo source? Neste caso ficou a dúvida se com o source poderia se incluir um arquivo inteiro de funções ou se teria que ter cada arquivo com funções separadamente, pois ele me pareceu tentar executar tudo de uma vez. Já no include incorporaríamos no corpo do script e faríamso a chamada qaundo necessário. Obrigado, Wagner Brasileiro -Mensagem original- De: shell-script@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] nome de Julio C. Neves Enviada em: terça-feira, 23 de janeiro de 2007 17:26 Para: shell-script@yahoogrupos.com.br Assunto: Re: [shell-script] Funções Epa Wagner, acho que vc se enganou um pouquinho qdo disse: "se sua função retorna algum valor para o programa que a chamou terá que exportá-la para que seja visível pelo script que a chamou.". O Tiago disse: " Sim, quem faz isso é o comando source ou '.' ". Não sei se entendi o que ele quis dizer e talvez diga a mesma coisa com outras palavras. Veja o script1.sh e o script2.sh, a seguir: $ cat script1.sh #!/bin/sh a=5 b=9 . ./script2.sh echo $a:$b $ cat script2.sh #!/bin/sh a="letra a" b="letra b" Ou seja, o script1.sh cria 2 variáveis e chama o script2.sh com o cmd source (.) e depois imprime estas variáveis. O script2.sh somente altera o valor destas variáveis. Qdo executamos o script1.sh veja o que acontece: $ ./script1.sh letra a:letra b Isto é o script2.sh alterou as variáveis, ninguém exportou nenhuma variável e o script1.sh viu as variáveis alteradas. Ou seja, o cmd source ou . é usado *justamente* para não fazer um fork do shell instanciando-o. Aqui tem tudo, em português, sobre o cmd souce<http://twiki.softwarelivre.org/bin/view/TWikiBar/TWikiBarPapo008#O_com ando_source> Abração, Julio :wq Em 23/01/07, Wagner Brasileiro Cardoso <[EMAIL PROTECTED]> escreveu: > > Não esquecendo que o comando source vai rodar uma instância separada do > bash > ou do seu interpretador de comandos e se sua função retorna algum valor > para > o programa que a chamou terá que exportá-la para que seja visível pelo > script que a chamou. > > Um abraço, > > Wagner Brasileiro > > -Mensagem original- > De: shell-script@yahoogrupos.com.br > [mailto:shell-script@yahoogrupos.com.br]E m > nome de Tiago Barcellos Peczenyj > Enviada em: terça-feira, 23 de janeiro de 2007 14:29 > Para: shell-script@yahoogrupos.com.br > Assunto: Re: [shell-script] Funções > > Sim, quem faz isso é o comando source ou '.' > > #!/bin/bash > . arquivo_com_funcoes.sh > ... > > []´s Tiago > > On 1/23/07, Diogo Júnior <[EMAIL PROTECTED]> > wrote: > > > > Olá pessoal! > > > > Gostaria de saber se eu posso criar um arquivo contendo algumas funções > > feitas por mim, e depois importar esse arquivo em futuros scripts que eu > > venha a fazer? > > Eu já faço isso com python, mas gostaria de poder fazer também com shell > > script. > > > > Desde já agradeço. > > > > Diogo Bonfim Pereira Junior > > Graduando em Ciências da Computação > > __ > > Fale com seus amigos de graça com o novo Yahoo! Messenger > > http://br.messenger.yahoo.com/ > > > > [As partes desta mensagem que não continham texto foram removidas] > > > > > > > > -- > Tiago B Peczenyj > Linux User #405772 > > # cd /pub > # more beer > > [As partes desta mensagem que não continham texto foram removidas] > > [As partes desta mensagem que não continham texto foram removidas] > > > [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas]
RES: [shell-script] arquivo - checar tamanho
Creio que seja usando o Cron, para faze rum daemon teria que ir para C e se se não fizer bem feito sentará a máquina. Wagner Brasileiro -Mensagem original- De: shell-script@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] nome de Celso Viana Enviada em: segunda-feira, 12 de março de 2007 11:44 Para: Shell Assunto: [shell-script] arquivo - checar tamanho All, Preciso, de 2 em 2 horas, checar se um arquivo atingiu determinado tamanho e se sim, zerar o mesmo; qual a melhor opção: um daemon ou deixar no cron (ou seria na cron)? Thanks -- Celso Vianna BSD User: 51318 http://www.bsdcounter.org 63 8404-8559 Palmas/TO [As partes desta mensagem que não continham texto foram removidas]
[shell-script] Cortar nome de arquivo.
Boa tarde, Estou em dúvida de qual método devo usar para reduzir uma lista de arquivos a somente 25 caracteres por nome de arquivo, minha principal dúvida é como fazer para limitar a renomeação aos primeiros 21 caracteres acrescidos de "."e extensão totalizando 25 caracteres que é o que o dispositivo me permite ler. Tenho a impressão que estou fazendo uma pergunta ridícula, mas no momento não me vem nada na cabeça. Pensei em criar uma lista dos nomes e ir processando linha a linha, mas me falta a forma de limitar ao tamanho da forma anterior que eu falei. Obrigado, Wagner Brasileiro
RES: [shell-script] Cortar nome de arquivo.
Ok, muito obrigado Júlio, minha dúvida era se, como vc diz, dava para fazer em uma ou duas linhas com sed e redirecionamento, mas pelo visto não. Se puder dar uma explicação da linha: "ArqNov=${Arq:0:Corte}.$Ext" se trata-se de variáveis de ambiente eu desconheço, poderia me passar algum lugar onde as referencie, assim como as ERs para testar cadeias numéricas? Obrigado. -Mensagem original- De: shell-script@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] nome de Julio C. Neves Enviada em: terça-feira, 10 de abril de 2007 14:45 Para: shell-script@yahoogrupos.com.br Assunto: Re: [shell-script] Cortar nome de arquivo. Aê Wagner, for Arq in * do [ ${#Arq} -le 25 ] && continue Ext=${Arq#*.} Corte=$((24-${#Ext})) ArqNov=${Arq:0:Corte}.$Ext [ -f $ArqNov ] && { echo $Arq já foi cortado antes continue } mv $Arq $ArqNov done OBS: 1 - Não foi testado 2 - Se o arquivo chamar-se wagner.tar.gz a extensão será considerada como tar.gz. Se quiser que seja só gz fazer Ext=${Arq##*.} 3 - Apesar de vc ter falado em extensões com 3 caracteres, neste caso fiz com extensões de qq tamanho para ficar genérico. 4 - Se todos os arquivo tiverem mais de 25 char e todas as extensões tiverem sempre 3 caracteres, isso pode ser bastante simplificado. Bom proveito, Julio :wq Em 10/04/07, Wagner Brasileiro Cardoso <[EMAIL PROTECTED]> escreveu: > > Boa tarde, > > Estou em dúvida de qual método devo usar para reduzir uma lista de > arquivos > a somente 25 caracteres por nome de arquivo, minha principal dúvida é como > fazer para limitar a renomeação aos primeiros 21 caracteres acrescidos de > "."e extensão totalizando 25 caracteres que é o que o dispositivo me > permite > ler. > Tenho a impressão que estou fazendo uma pergunta ridícula, mas no momento > não me vem nada na cabeça. > Pensei em criar uma lista dos nomes e ir processando linha a linha, mas me > falta a forma de limitar ao tamanho da forma anterior que eu falei. > > Obrigado, > > Wagner Brasileiro > > > -- Abraços, Julio http://www.julioneves.com - Um livro sobre Bash completo e on-line :wq [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas]
RES: [shell-script] Cortar nome de arquivo.
-Mensagem original- De: shell-script@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] nome de Wagner Brasileiro Cardoso Enviada em: terça-feira, 10 de abril de 2007 18:18 Para: shell-script@yahoogrupos.com.br Assunto: RES: [shell-script] Cortar nome de arquivo. Ok, muito obrigado Júlio, minha dúvida era se, como vc diz, dava para fazer em uma ou duas linhas com sed e redirecionamento, mas pelo visto não. Se puder dar uma explicação da linha: "ArqNov=${Arq:0:Corte}.$Ext" se trata-se de variáveis de ambiente eu desconheço, poderia me passar algum lugar onde as referencie, assim como as ERs para testar cadeias numéricas? Obrigado. -Mensagem original- De: shell-script@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] nome de Julio C. Neves Enviada em: terça-feira, 10 de abril de 2007 14:45 Para: shell-script@yahoogrupos.com.br Assunto: Re: [shell-script] Cortar nome de arquivo. Aê Wagner, for Arq in * do [ ${#Arq} -le 25 ] && continue Ext=${Arq#*.}[CPD da SBAC] Grande júlio, encasquetei com algumas coisas que não entendi nesse exemplo, realmente as expansões de comando não forammeu forte no curso. Nessa linha em que comcei a digitar não ntendi exatamente sta expansão: Ext=${Arq#*.}, o que eu entendi é, corta a menor ocorrência da cadeia à esquerda da expressão que é o nome do arquiv, sobrando só a extensão!? Corte=$((24-${#Ext})) ArqNov=${Arq:0:Corte}.$Ext[CPD da SBAC] Já nessa eu não entendi a posição "o" seria "0" !? Obrigado e um abraço!!! Wagner Brasileiro. [ -f $ArqNov ] && { echo $Arq já foi cortado antes continue } mv $Arq $ArqNov done OBS: 1 - Não foi testado 2 - Se o arquivo chamar-se wagner.tar.gz a extensão será considerada como tar.gz. Se quiser que seja só gz fazer Ext=${Arq##*.} 3 - Apesar de vc ter falado em extensões com 3 caracteres, neste caso fiz com extensões de qq tamanho para ficar genérico. 4 - Se todos os arquivo tiverem mais de 25 char e todas as extensões tiverem sempre 3 caracteres, isso pode ser bastante simplificado. Bom proveito, Julio :wq Em 10/04/07, Wagner Brasileiro Cardoso <[EMAIL PROTECTED]> escreveu: > > Boa tarde, > > Estou em dúvida de qual método devo usar para reduzir uma lista de > arquivos > a somente 25 caracteres por nome de arquivo, minha principal dúvida é como > fazer para limitar a renomeação aos primeiros 21 caracteres acrescidos de > "."e extensão totalizando 25 caracteres que é o que o dispositivo me > permite > ler. > Tenho a impressão que estou fazendo uma pergunta ridícula, mas no momento > não me vem nada na cabeça. > Pensei em criar uma lista dos nomes e ir processando linha a linha, mas me > falta a forma de limitar ao tamanho da forma anterior que eu falei. > > Obrigado, > > Wagner Brasileiro > > > -- Abraços, Julio http://www.julioneves.com - Um livro sobre Bash completo e on-line :wq [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas]
RES: [shell-script] Cortar nome de arquivo.
Última forma Júlio, vi que foi confusão de fonte aoler o que escrevi esta font não está distingüindo a diferença de "o" (letra ó) para "0" número zero. -Mensagem original- De: Wagner Brasileiro Cardoso [mailto:[EMAIL PROTECTED] Enviada em: quinta-feira, 19 de abril de 2007 12:36 Para: shell-script@yahoogrupos.com.br Assunto: RES: [shell-script] Cortar nome de arquivo. -Mensagem original- De: shell-script@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] nome de Wagner Brasileiro Cardoso Enviada em: terça-feira, 10 de abril de 2007 18:18 Para: shell-script@yahoogrupos.com.br Assunto: RES: [shell-script] Cortar nome de arquivo. Ok, muito obrigado Júlio, minha dúvida era se, como vc diz, dava para fazer em uma ou duas linhas com sed e redirecionamento, mas pelo visto não. Se puder dar uma explicação da linha: "ArqNov=${Arq:0:Corte}.$Ext" se trata-se de variáveis de ambiente eu desconheço, poderia me passar algum lugar onde as referencie, assim como as ERs para testar cadeias numéricas? Obrigado. -Mensagem original- De: shell-script@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] nome de Julio C. Neves Enviada em: terça-feira, 10 de abril de 2007 14:45 Para: shell-script@yahoogrupos.com.br Assunto: Re: [shell-script] Cortar nome de arquivo. Aê Wagner, for Arq in * do [ ${#Arq} -le 25 ] && continue Ext=${Arq#*.}[CPD da SBAC] Grande júlio, encasquetei com algumas coisas que não entendi nesse exemplo, realmente as expansões de comando não forammeu forte no curso. Nessa linha em que comcei a digitar não ntendi exatamente sta expansão: Ext=${Arq#*.}, o que eu entendi é, corta a menor ocorrência da cadeia à esquerda da expressão que é o nome do arquiv, sobrando só a extensão!? Corte=$((24-${#Ext})) ArqNov=${Arq:0:Corte}.$Ext[CPD da SBAC] Já nessa eu não entendi a posição "o" seria "0" !? Obrigado e um abraço!!! Wagner Brasileiro. [ -f $ArqNov ] && { echo $Arq já foi cortado antes continue } mv $Arq $ArqNov done OBS: 1 - Não foi testado 2 - Se o arquivo chamar-se wagner.tar.gz a extensão será considerada como tar.gz. Se quiser que seja só gz fazer Ext=${Arq##*.} 3 - Apesar de vc ter falado em extensões com 3 caracteres, neste caso fiz com extensões de qq tamanho para ficar genérico. 4 - Se todos os arquivo tiverem mais de 25 char e todas as extensões tiverem sempre 3 caracteres, isso pode ser bastante simplificado. Bom proveito, Julio :wq Em 10/04/07, Wagner Brasileiro Cardoso <[EMAIL PROTECTED]> escreveu: > > Boa tarde, > > Estou em dúvida de qual método devo usar para reduzir uma lista de > arquivos > a somente 25 caracteres por nome de arquivo, minha principal dúvida é como > fazer para limitar a renomeação aos primeiros 21 caracteres acrescidos de > "."e extensão totalizando 25 caracteres que é o que o dispositivo me > permite > ler. > Tenho a impressão que estou fazendo uma pergunta ridícula, mas no momento > não me vem nada na cabeça. > Pensei em criar uma lista dos nomes e ir processando linha a linha, mas me > falta a forma de limitar ao tamanho da forma anterior que eu falei. > > Obrigado, > > Wagner Brasileiro > > > -- Abraços, Julio http://www.julioneves.com - Um livro sobre Bash completo e on-line :wq [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas]
RES: [shell-script] Re: Cortar nome de arquivo.
-Mensagem original- De: shell-script@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] nome de Julio C. Neves Enviada em: terça-feira, 10 de abril de 2007 15:14 Para: shell-script@yahoogrupos.com.br Assunto: Re: [shell-script] Re: Cortar nome de arquivo. Fala Wagner, já que vc quer que reduza, vou mudar o que fiz. Mas não esqueça, isso só vale qdo todos os arquivos têm mais de 29 char (25 + ponto + extensão) e todos as extensões têm 3 char. Arqs=$(ls) ArqNov=$(paste -d. <(cut -c-21 <<< "$Arqs") <(cut -f2 -d. <<< "$Arqs"))[CPD da SBAC] Mestre, nesse exemplo não entendi o "<<<" erro de digitação? Não encontrei nenhuma ocorr~encia desse tipo de redirecionamento... paste -d' ' <(echo "$Arqs") <(echo "$ArqNov") | xargs -n 2 mv Não fiz em duas linhas, mas tb não usei loop. Para entender execute linha a linha no prompt. Se ainda assim alguém não entender, pergunte que explico. SuShellso, Julio :wq Em 10/04/07, wagnerbrasileirocardoso <[EMAIL PROTECTED]> escreveu: > > Sim, mas qual ER conta caracteres? No cartão de referência nem na > sexta edição do livro do Júlio tem isso, já vi em algum lugar, mas > não lembro, e ainda assim, se fosse só um arquivo seria moleza, mas > qual a melhor maneira de fazer a repetição com um looping e variáveis > de controle lendo linha a linha de um arquivo contendo a listagem do > diretório em questão (pois são muitos arquivos) ou dá para fazer isso > com redirecionamento? Pois que eu m lembre posso redirecionar a > entrada de um comando vindo de um arquivo, mas como fazer para > processar cada linha dessa entrada!? > Sei que com o laço e a estrutura de controle funciona, mas com > certeza deve haver uma maneira reduzida de fazer isso em uma ou duas > linhas de Shell como diz o Júlio. > > Obrigado e um abraço a todos > > --- Em shell-script@yahoogrupos.com.br , > Bruno Gunter Fricke > <[EMAIL PROTECTED]> escreveu > > > > > Use o sed > > > > On Tue, 2007-04-10 at 12:33 -0300, Wagner Brasileiro Cardoso wrote: > > > Boa tarde, > > > > > > Estou em dúvida de qual método devo usar para reduzir uma lista de > > > arquivos > > > a somente 25 caracteres por nome de arquivo, minha principal > dúvida é > > > como > > > fazer para limitar a renomeação aos primeiros 21 caracteres > acrescidos > > > de > > > "."e extensão totalizando 25 caracteres que é o que o dispositivo > me > > > permite > > > ler. > > > Tenho a impressão que estou fazendo uma pergunta ridícula, mas no > > > momento > > > não me vem nada na cabeça. > > > Pensei em criar uma lista dos nomes e ir processando linha a > linha, > > > mas me > > > falta a forma de limitar ao tamanho da forma anterior que eu > falei. > > > > > > Obrigado, > > > > > > Wagner Brasileiro > > > > > > > > > > > > > > > > > > > > > > > > [As partes desta mensagem que não continham texto foram removidas] > > > > > -- Abraços, Julio http://www.julioneves.com - Um livro sobre Bash completo e on-line :wq [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas]
RES: [Bulk] Re: [shell-script] Re: Ajuda com cri ação de script - verificar IP
tail +3 < ifconfig eth0 |cut -f_número da coluna (ex.: cut -f5 paar coluna número 5, isso se suas colunas forem separadas por TAB, caso contrário use a opção -d_delimitador. ex.: -d: - caso queira usar o separador de campos como o ":") Infelizmente terá que fazer maiores consultas aos comandos para resultados melhores Espero ter ajudado, Wagner Brasileiro -Mensagem original- De: shell-script@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] nome de Rafael Tomelin Enviada em: quinta-feira, 19 de abril de 2007 13:56 Para: shell-script@yahoogrupos.com.br Assunto: [Bulk] Re: [shell-script] Re: Ajuda com criação de script - verificar IP Irei usar OPEN VPN. è que não sei muito programação no shell. Conheço apenas alguns comandos Sei que terei que filtrar o ifconfig eth0 | grep e depois comparar com a linha 3 apartir da nº coluna. mas isso ñ sei fazer por shell. Gostaria de uma ajuda, como filtrar, como abrir o arquivo da vpn e comprar e como alterar o ip. Talvez seria até melhor eu criar uma váriavel no arquivo da vpn, pois só mudo essa variavel. ## Essa seria minha configuração no server: remote 200.20.10.1 dev tun ifconfig 172.16.1.1 172.16.1.2 up /etc/openvpn/up.sh down /etc/openvpn/down.sh secret /etc/openvpn/key # ativa compressão LZO - se desejável. Precisa instalar o pacote LZO comp-lzo # Envia um ping a cada 15 segundos ping 15 port 5002 # Usuários e grupo que devem rodar o processo openvpn user nobody group nobody Em 19/04/07, andrebarretosantos <[EMAIL PROTECTED]> escreveu: > > Que VPN você vai usar ? > Manda a sintaxe do arquivo da VPN. > > --- Em shell-script@yahoogrupos.com.br , > "Eric Anderson" <[EMAIL PROTECTED]> > escreveu > > > > > Qual sua dúvida específica? > > > > A lógica vc tem > > > > 1.. "pegar" o ip da sua interface eth0 > > 2.. comparar com o "arquivo da VPN" ( que eu não sei qual é =P) > > 3.. if (mudou) atualiza else num faz nada > > 4.. te mandar um email com o número de cada ip (quais ip´s). > > O que vc não sabe fazer? > > > > sds > > > > Eric > > > > > > - Original Message - > > From: Rafael Tomelin > > To: shell-script@yahoogrupos.com.br > > Sent: Thursday, April 19, 2007 9:25 AM > > Subject: [shell-script] Ajuda com criação de script - verificar IP > > > > > > Olá Pessoal, > > > > Estou instalando uma VPN, porém meu IP é dinâmico. Então vou fazer um > > script e colocar no cron para rodar a cada 30min. > > > > O que estou precisando na minha ajuda é o seguinte: > > > > Quero verificar o meu IP atual (ifconfig eth0) e comparar com o > arquivo da > > VPN para ver se o IP é o mesmo ou se ele mudo. Caso tenha mudado ele > > atualiza o arquivo da VPN. > > Indiferente, se ele mudar ou não i IP, quero que me mande um email > > informando qual o numero de cada IP. > > > > Como que posso fazer isso? > > > > [As partes desta mensagem que não continham texto foram removidas] > > > > > > > > > > > > [As partes desta mensagem que não continham texto foram removidas] > > > > > [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas]
RES: [shell-script] shell com php
Não sei qual seria o comando no PHP mas rode um chamada de sistema executando os comandos: "variavel=xyz" e "export xyz" Se entendi bem, isso deve resolver seu problema. Abraço, Wagner Brasileiro -Mensagem original- De: shell-script@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] nome de Leandro Venturini Enviada em: terça-feira, 15 de maio de 2007 12:14 Para: shell-script@yahoogrupos.com.br Assunto: [shell-script] shell com php /Oi Lista preciso passar umas variáveis do php pro shell alguem saberia me dizer como eu faço ? se eu usar o /shell junto com o php no exemplo abaixo as variáveis são usadas em ambas delimitações de código ? Leandro / #!/bin/bash echo This is the Bash section of the code. $var1 /usr/local/bin/php -q << EOF [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas]
RES: [shell-script] ordenar file
Desculpe-me Andrea, mas se a linha começar em branco e terminar m branco e tivr outro conteúdo no meio? Acho que esse teste não seria válido, seria? Não seria melhor testar se o que se segu ao primeiro espaço em branco seria uma lista negada de qq coisa, caso ocntrário existe um caracter... Abraços, Wagner Brasileiro -Mensagem original- De: shell-script@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] nome de Andrea VB Enviada em: quarta-feira, 4 de julho de 2007 12:25 Para: shell-script@yahoogrupos.com.br Assunto: Re: [shell-script] ordenar file On 7/4/07, miguel <[EMAIL PROTECTED]> wrote: > moito obrigado Andrea: > pero como elimino las lineas en blanco??? sed -i '/^$/d' abc ^: inicio de linha $: final de linha Então, "^$" significa uma linha sem conteúdo nenhum. Desculpa, não dei conta de explicar em espanhol. > $cat file > > 3.49593 > 4.08548 > 4.61625 > 4.54385 > 3.51682 > 2.42518 > 1.79255 > 1.91137 > > 2.52529 > 3.00066 > 3.08569 > 3.19804 > > > > > > > > > > > > > > --- Andrea VB <[EMAIL PROTECTED]> escribió: > > > Creo que 'sed' te ayuda: > > > > $ sed -i '/^Printing/d' file.txt > > $ sed -i 's/ /\n/g' file.txt > > > > On 7/4/07, miguel <[EMAIL PROTECTED]> wrote: > > > Ola: > > > eu tengo um file: > > > > > > cat file.txt > > > > > > Printing Grid -- 12 Values -- Undef = -9.99e+33 > > > 2.60407 2.59396 2.30881 1.58625 0.918403 0.615756 > > > 0.473296 0.471362 > > > 0.847646 1.48126 2.06835 2.27529 > > > > > > y quero ordenar asi: > > > > > > 2.60407 > > > 2.59396 > > > 2.30881 > > > 1.58625 > > > 0.918403 > > > 0.615756 > > > 0.473296 > > > 0.471362 > > > 0.847646 > > > 1.48126 > > > 2.06835 > > > 2.27529 > > > > > > Aguiem puede ayudarme? > > > > > > > > > > > > __ > > > LLama Gratis a cualquier PC del Mundo. > > > Llamadas a fijos y móviles desde 1 céntimo por > > minuto. > > > http://es.voice.yahoo.com > > > > > > > > > > > > -- > > > Esta lista não admite a abordagem de outras > > liguagens de programação, como perl, C etc. Quem > > insistir em não seguir esta regra será moderado sem > > prévio aviso. > > > > > > -- > > > Sair da lista: > > [EMAIL PROTECTED] > > > > > > -- > > > Esta lista é moderada de acordo com o previsto em > > http://www.listas-discussao.cjb.net > > > > > > -- > > > Servidor Newsgroup da lista: news.gmane.org > > > Grupo: > > gmane.org.user-groups.programming.shell.brazil > > > > > > > > > Links do Yahoo! Grupos > > > > > > > > > > > > > > > > __ > ¡Descubre una nueva forma de obtener respuestas a tus preguntas! > Entra en Yahoo! Respuestas. > http://es.answers.yahoo.com/info/welcome > > > -- > Esta lista não admite a abordagem de outras liguagens de programação, como perl, C etc. Quem insistir em não seguir esta regra será moderado sem prévio aviso. > -- > Sair da lista: [EMAIL PROTECTED] > -- > Esta lista é moderada de acordo com o previsto em http://www.listas-discussao.cjb.net > -- > Servidor Newsgroup da lista: news.gmane.org > Grupo: gmane.org.user-groups.programming.shell.brazil > > > Links do Yahoo! Grupos > > > [As partes desta mensagem que não continham texto foram removidas]
RES: [shell-script] Script para atualizar arquivos/aplicativos
Lhe aconselho a listar os arquivos e comparar os "campos" (colunas) data e tamanho. Wagner Brasileiro -Mensagem original- De: shell-script@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] nome de Luis Tiani Enviada em: terça-feira, 31 de julho de 2007 08:06 Para: shell-script@yahoogrupos.com.br Assunto: [shell-script] Script para atualizar arquivos/aplicativos Pessoal, Estou criando um script para atualizar arquivos/aplicativos em estacoes de trabalho. Bem basico, eu monto um diretorio num servidor Windows comparo um arquivo de controle e sendo o do servidor mais novo eu rodo demais scripts de copia/atualizacao dos arquivos. Eu gostaria de saber qual melhor forma de eu fazer a comparacao e se alguem jah tem algo pronto em producao para eu poder me basea/melhorar meu processo SCRIPT: *** #!/bin/bash DATA=`date +%d-%m-%y` ping -c4 ip_servidor if [ $? -e 0 ]; then mount -f cifs //ip_do_servidor/share /mnt/update -o credentials=/etc/.smbpassd > /dev/null #essa que eu ainda naum soube fazer... if [ versao_atual -gt versao_anterior ]; then /opt/update/atualiza.sh else echo "${DATA} - Sem atualizacao" >>/var/log/estacao.log fi fi *** Grato, -- Luis Tiani São Paulo-SP [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas]
RES: [shell-script] Sobre Coreutils do gentoo
Livro do Júlio página 40 da sexta edição, pág. 38 na quinta edição. ou ainda no livro Scripts de Shell Linux com Bash de Ken o. Burtch pág. 252. Se for comprar aconselho o do Júlio, é mais barato, é melhor e é nacional! Wagner Brasileiro Cardoso CPD da SBAC 21 2187-0800 -Mensagem original- De: shell-script@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] nome de Alain M. Enviada em: terça-feira, 4 de julho de 2006 13:52 Para: shell-script@yahoogrupos.com.br Assunto: Re: [shell-script] Sobre Coreutils do gentoo Esse comando é muito estranho, e estranhamente funciona... De onde vem isso, anteontem estava apanhando para fazer isso num script, mas não tem nada no man. Alguém tem uma dica? Alain Flavio Junior escreveu: > Talvez seja só uma interpretação de shell.. > Nao uso nem conheço a fundo o gentoo, mas tente coisas como: > > $ tail "+45" > $ tail \+45 > ou até > $ tail --lines="+45" > > Veja qual a shell seu amigo usa e faça testes com ela.. talvez ache a resposta.. > Sobre o --help, ele realmente não documenta nada sobre a opção "+" mesmo. > > > Flávio do Carmo Junior aka blk1d > > On 7/4/06, Thomaz de Oliveira dos Reis <[EMAIL PROTECTED]> wrote: >> Olá amigos! >> >> Sou novo na lista, fui apresentado a ela pelo Julio Neves, no curso que >> ele deu aqui em Brasília, e trago agora algumas dúvidas... >> >> Conversando com meu amigo que usa gentoo sobre alguns recursos do shell, >> percebi que o tail +X não funciona no pc dele... - Esta lista não admite a abordagem de outras liguagens de programação, como perl, C etc. Quem insistir em não seguir esta regra será moderado sem prévio aviso. - Sair da lista: [EMAIL PROTECTED] - Esta lista é moderada de acordo com o previsto em http://www.listas-discussao.cjb.net - Servidor Newsgroup da lista: news.gmane.org Grupo: gmane.org.user-groups.programming.shell.brazil Links do Yahoo! Grupos ___ Novidade no Yahoo! Mail: receba alertas de novas mensagens no seu celular. Registre seu aparelho agora! http://br.mobile.yahoo.com/mailalertas/ - Esta lista não admite a abordagem de outras liguagens de programação, como perl, C etc. Quem insistir em não seguir esta regra será moderado sem prévio aviso. - Sair da lista: [EMAIL PROTECTED] - Esta lista é moderada de acordo com o previsto em http://www.listas-discussao.cjb.net - Servidor Newsgroup da lista: news.gmane.org Grupo: gmane.org.user-groups.programming.shell.brazil Links do Yahoo! Grupos <*> Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/shell-script/ <*> Para sair deste grupo, envie um e-mail para: [EMAIL PROTECTED] <*> O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html
RES: [shell-script] filtrar o conteúdo de um resulta do
Mando o script que está usando para podermos ver o que dá para fazer... Wagner Brasileiro Cardoso CPD da SBAC 21 2187-0800 -Mensagem original- De: shell-script@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] nome de lferreir1 Enviada em: quarta-feira, 5 de julho de 2006 14:09 Para: shell-script@yahoogrupos.com.br Assunto: [shell-script] filtrar o conteúdo de um resultado Olá a todos! A minha pergunta é a seguinte: Tenho um arquivo cuja saída é o resultado do comando ls -lR em um diretório Windows. Dentro deste arquivo existem os nomes dos diretórios, sub-diretórios e seus respectivos arquivos. O meu script filtra (e está funcionando) somente os sub-diretórios que contenham 3 caracteres exemplo: \ASSINAT\AAA\ \ASSINAT\BBB\ Fora deste padrão, o script despreza. Só tem um problema, que eu não estou conseguindo fazer. Preciso gerar um arquivo para cada diretório e seus respectivos arquivos. Exemplo: cat teste5 assinat -1 -2 -3 assinat1 -4 -5 -6 -7 assinat2 -8 -9 -10 -11 -12 ... Preciso gerar os seguintes arquivos: assinat, e dentro deste arquivo, os nomes dos arquivos -1 -2 -3 cat assinat1 -4 -5 -6 -7 cat assinat2 -8 -9 -10 -11 -12 . Deu pra entender? Grato mais uma vez, Luiz - Esta lista não admite a abordagem de outras liguagens de programação, como perl, C etc. Quem insistir em não seguir esta regra será moderado sem prévio aviso. - Sair da lista: [EMAIL PROTECTED] - Esta lista é moderada de acordo com o previsto em http://www.listas-discussao.cjb.net - Servidor Newsgroup da lista: news.gmane.org Grupo: gmane.org.user-groups.programming.shell.brazil Links do Yahoo! Grupos ___ Novidade no Yahoo! Mail: receba alertas de novas mensagens no seu celular. Registre seu aparelho agora! http://br.mobile.yahoo.com/mailalertas/ - Esta lista não admite a abordagem de outras liguagens de programação, como perl, C etc. Quem insistir em não seguir esta regra será moderado sem prévio aviso. - Sair da lista: [EMAIL PROTECTED] - Esta lista é moderada de acordo com o previsto em http://www.listas-discussao.cjb.net - Servidor Newsgroup da lista: news.gmane.org Grupo: gmane.org.user-groups.programming.shell.brazil Links do Yahoo! Grupos <*> Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/shell-script/ <*> Para sair deste grupo, envie um e-mail para: [EMAIL PROTECTED] <*> O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html
RES: [shell-script] como pegar o numero atual da linha no shell (Posicionando a String do lado direito)
Se entendi o que vc quer, não seria o caso de usar o exemplo do Júlio com o printf e usar ao invés de números absolutos, variáveis para posicionar linha e coluna!? Wagner Brasileiro Cardoso CPD da SBAC 21 2187-0800 -Mensagem original- De: shell-script@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] nome de Jorge Pereira Enviada em: quinta-feira, 6 de julho de 2006 10:14 Para: shell-script@yahoogrupos.com.br Assunto: Re: [shell-script] como pegar o numero atual da linha no shell (Posicionando a String do lado direito) desta forma eu conheço julio, mais o que eu preciso agora e justificar precisamente do lado direito, fiz desta forma. [EMAIL PROTECTED]:~/scripts> _str="Jorge Pereira" [EMAIL PROTECTED]:~/scripts> posi="$(($(tput cols)-${#_str}))" [EMAIL PROTECTED]:~/scripts> tput cup 4 88; echo $_str Jorge Pereira [EMAIL PROTECTED]:~/scripts> mais queria fazer de uma forma que fica-se generica a posição da linha, tentei salvando a posição do cursor e recuperando mais não rolou! alguma sugestão? On 7/6/06, Julio C. Neves <[EMAIL PROTECTED]> wrote: > > Fala Jorge, > Pelo seus e-mails anteriores, não me passou pela cabeça que o seu problema > era justificar um texto pela direita. Isso se faz com o printf e não com o > tput. Veja só: > > $ printf "%15s\n" Jorge > Jorge > > Desta forma, escrevi Jorge com 15 posições alinhado à direita. > > Abraços, > Julio > :wq > > 2006/7/5, Jorge Pereira <[EMAIL PROTECTED]>: > > > > > sim!! > > > > na medida certa, minha unica duvida foi e referente a justificar o texto > > precisamente no lado direito, não encontrei a opção do tput para isto. > > > > > > On 7/5/06, Julio C. Neves <[EMAIL PROTECTED]> wrote: > > > > > > Fala Jorge, > > > não entendi bem o que vc queria, mas tenho duas perguntas a fazer: > > > 1- Vc consultou a parte de tput em www.julioneves.com? > > > 2- A resposta do Valtoir não atende ao que vc quer? > > > > > > Caso a sua resposta seja negativa em ambas as questões, te peço que > > > reformule a sua pergunta pq não entendi direito o que querias. Abaixo > um > > > "bacalho" para ficar contando segundos no mesmo lugar. > > > > > > clear; tput civis; tput cup 10 10; tput sc > > > for ((i=1; i<=10; i++)); > > > { > > > tput rc > > > date "+%S" > > > sleep 1 > > > } > > > tput cnorm > > > > > > [ ]s, > > > > > > Julio > > > :wq > > > > > > > > > > > > > > > 2006/7/4, Jorge Pereira <[EMAIL PROTECTED]>: > > > > > > > > julio, tudo bom? > > > > > > > > mais veja so..digamos que eu esteja la pela 17 linha e executo o > > script > > > > que > > > > possue um bloco conforme o abaixo. > > > > > > > > for i in $(seq 1 10); do > > > >echo "--> $i" > > > >sleep 0.2 > > > > done > > > > > > > > eu quero que ele exiba na mesma posição (x/y) tipo > > > > > > > > for i in $(seq 1 10); do > > > >tput cup XX 0 > > > >echo "--> $i" > > > >sleep 0.2 > > > > done > > > > > > > > quero que ele fique imprimindo na linha currente de > execução...sacou? > > > > isto e possivel? por que da forma que eu fiz eu to limpando a tela e > > > > executando > > > > de cima pra baixo. > > > > > > > > On 7/4/06, Julio C. Neves <[EMAIL PROTECTED]> wrote: > > > > > > > > > > Fala Jorge, > > > > > se vc fizer: > > > > > > > > > > tput sc # sc = Save Cursor position > > > > > > > > > > será salva a posição atual do cursor. Para voltar a esta posição, > > use: > > > > > > > > > > tput rc # rc = Restore Cursor position > > > > > > > > > > Para saber o tamanho da tela, use: > > > > > > > > > > tput lines > > > > > > > > > > ou: > > > > > > > > > > tput cols > > > > > > > > > > Vc verá isso e muito mais em www.julioneves.com (no quadro > > localizado > > > no > > > > > canto superior esquerdo da página digite tput e siga o link > > oferecido) > > > > > > > > > > Abração, > > > > > Julio >