[shell-script] Armazenar valores na array
while [ $n -lt 3 ] do read -p "Digite um numero: " x vet[$n]=$x let n++ if [ $n -eq 3 ] then OUT=$(echo [EMAIL PROTECTED] | sort ) echo $OUT | sort else continue fi done Bom pessoal tenho uma dúvida creio que seja bem simples, o que acontece é que quero pegar 3 entradas do teclado (int) e quero armazenalas dentro de uma array dinamicamente, e depois mostrar os valores armazenados dentro da array organizadamente (sort)... em ordem, porem a saida é sempre desorganizada, sempre sai do jeito que entrou... o que devo estar fazendo de errado ?
[shell-script] Cortar caractere de maior valor (ultimo da faixa vertical da saida do sort)
Olá pessoal tenho uma lista aqui da seguinte forma: a b c d e Pois bem, essa é a saida de um sort, essa lista na verdade nao e constante não, tá variando sempre, e ela também utiliza numeros, bom, sendo o 'e' numericamente no alfabeto de maior valor eu queria classifica-lo , mas nao utilizando o "grep" e sim se aproveitando da maneira em que o comando sort trabalha, com o sort somente, irei por em ordem, o caractere de maior valor (numerico ou alfabetico) ficara sempre no final (veja o 'e'), eu queria corta-lo, e mostralo na tela, se eu utilizasse grep, seria somente para valores constantes, mas como a lista varia, o grep e inviavel pra classificar sempre o maior valor ( creio eu ). Poderia cortar até mesmo a primeira linha que no caso e a que iria aparecer o maior caractere caso eu utilizasse o sort -r, mas quanto a isso tanto faz, pois daria no mesmo. Então, alguem poderia ajudar a cortar o ultimo caractere dessa lista, que no caso é o maior valor (sempre) ao menos que utilize o parametro -r do sort, e enviar na saida da tela com um echo, por exemplo ?
[shell-script] Tabelas hash
Olá, lista, alguem saberia me dizer se é possivel criar tabelas hash em bash script ? ou até mesmo dicionarios, como no python. por exemplo em python: dic={ "chave":"valor", "chave1":"valor1" } como associaria palavras chaves a valores em shell ? obrigado desde já.
[shell-script] Comando typeset
Olá pessoal, Tive lendo sobre o comando typeset, e vi que ele é um built-in da bash, no entanto, comparei o man do typeset da bash e do ksh, vi que, no korn shell, por exemplo, o comando typeset oferece mais parametros pra uso, como por exemplo, converter lower case para upper case, na bash eu teria que utilizar o programa "tr", estou certo ? ou existe alguma outra maneira ? A dúvida é por que o typeset na bash foi implementando com menas opcoes, provavelmente por que haja outras maneiras de o fazer né, sem intermédio de programas auxiliares como o "tr", mas se existem, eu desconheço. bash: typeset: [-afFirtx] ksh typeset: [-HLRZfilprtux[n] Grato!
[shell-script] Dúvida com cut
Olá lista, Estou com um arquivo com o seguinte conteudo: >>> /sbin/iwgetid >>> /sbin/iwlist >>> /sbin/iwconfig >>> /sbin/iwspy >>> /sbin/iwevent >>> /sbin/ifrename >>> /sbin/iwpriv A dúvida é, quando uso o comando: cut -c 5-18, tenho a seguinte saida: /sbin/ /sbin/iwlist /sbin/iwconfig /sbin/iwspy /sbin/iwevent /sbin/ifrename /sbin/iwpriv usualmente, o que eu realmente queria, era: imaginem que eu tivesse uma string de mais de 80 mil caracteres e não soubesse exatamente quantos caracteres ela possui, eu não poderia especificar exatamente no comando cut -c . o cut teria algo como: cut -c 5-@ (só exemplo, aonde @ e até o fim da linha) ??? ou existiria algum caractere pra indicar o fim da linha ??? Como eu poderia estar fazendo isso ? Grato.
[shell-script] Váriavel em outras instancias da bash
Olá lista, Eu declarei uma variavel chamada $ SALARIOS=/home/pedro/empresa/rh/salarios No entanto, só consigo obter o valor da mesma, na mesma instancia (é esse o nome) da bash em que a declarei. Quando executo outra instancia da bash, por exemplo, e executo um echo "$SALARIOS" para obter o valor dessa variavel, não me retorna absolutamente nada, mesmo utilizando o comando export $SALARIOS. Os valores não são armazenados e disponiveis para qualquer instancia de bash que eu abrir, bom, a dúvida é: como faço pra que ela esteja disponivel em todas as instancias da bash ? Grato!
[shell-script] Bash simplesmente fecha em função de um comando.
Bom dia, lista. Estou executando o seguinte comando: cat /etc/gentoo-release < <(tr [a-z] [A-Z]) E na realidade o que acontece é que: quando o executo, o terminal simplesmente fecha. Pluft, fechou. Alguem saberia me dizer por qual motivo a bash teve essa reação ?
[shell-script] Buscar maior valor de uma array
Olá lista, Estou aqui com uma array que contem 50 valores. Bom, o que eu quero e classificar o maior valor e joga-lo em um relevancia.txt Se fosse ao menos 3 valores apenas, dava pra comparar um a um em busca do maior valor, no entanto são muitos valores. Gostaria de saber se existe , um algoritimo / melhor forma pra classificar o maior numero dessa array. Grato!
[shell-script] Pegar valor de retorno
Ae galera Executei um programa que retorna um código de finalização caso bem sucedido 0 e caso erro 1 No entanto eu gostaria que o programa retornasse o valor também na entrada padrão, no caso, o terminal do usuario. Ou então, como eu faria pra pegar o código de retorno desse programa, mesmo após o programa já finalizado, será que tem como ? Em C eu executaria uma funcao declarada como int via printf e pegaria o valor de retorno. Porém em shell eu to em dúvida de como faze-lo. Grato!
[shell-script] Declarar inteiro longo
Ola lista, Declarei uma variavel que recebe um valor da entrada padrao stdin do usuario no entanto quando se armazena um inteiro longo me retorna essa mensagem de erro : integer expression expected Em C eu declarava essa variavel como long int e conseguia armazenar o numero inteiro com grande quantidade de casas decimais ja no shell me retorna a mensagem acima. Alguem teria alguma soluçao? Grato
[shell-script] Script para alteração de zona DNS.
Boa tarde Pessoal, Estou me enrolando aqui para fazer um script que acrescente +1 ao último dígito da linha SERIAL de cada arquivo de zona de um servidor DNS. Tenho um diretório com vários arquivos de zona, e dentro dele temos o SERIAL, cada um mais ou menos com o seguinte conteúdo: $ttl 300 @ IN SOA dominio.com.br. admin.dominio.com.br. ( 2005122002 ; serial > ESTA LINHA PRECISO ACRESCENTAR +1 AO NÚMERO, FICANDO COM 2005122003. 300 ; refresh every 10 hours 300 ; retry after 1 hour 300 ; expire after 1000 hours 300 ; default ttl is 1 semana ) ; Define nameservers e mail server IN NS ns1 IN NS ns2 domínio.com.br. IN A 200.243.178.153 @ IN MX 10 mail www INA 202.133.234.137 ns INA 203.223.157.130 mailINA 201.133.234.152 ftp INA 202.133.234.137 pop INA 203.133.234.135 smtpINA 202.133.234.135 pop3INA 203.133.234.135 ns1 INA 201.133.234.137 ns2 INA 202.223.157.132 Já consegui alterar a linha mail de cada um, substituindo com sed, mas ainda não consegui descobrir uma forma de acrescentar este número. Não sei se fui bem claro no que preciso, mas se puderem me ajudar :-) Abraços.
Re: [shell-script] Script para alteração de zona DNS.
Pessoal, Muito obrigado pela ajuda :D Aparentemente em cima de um arquivo deu certo , só falta mandar no laço agora para realizar em todos os arquivos. Mas agora eu me quebro ake :-) Abraço ! Flavio Junior escreveu: > > Garante que toda linha tem a palavra "serial" ? Ou que seja a terceira > linha? > > [r...@cerebro ~]# cat dns > $ttl 300 > @ IN SOA dominio.com.br. admin.dominio.com.br. ( > 2005122002 ; serial > ESTA LINHA > 300 ; refresh every 10 hours > 300 ; retry after 1 hour > 300 ; expire after 1000 hours > 300 ; default ttl is 1 semana > ) > ; Define nameservers e mail server > > IN NS ns1 > IN NS ns2 > domÃo.com.br. IN A 200.243.178.153 > @ IN MX 10 mail > > www IN A 202.133.234.137 > ns IN A 203.223.157.130 > mail IN A 201.133.234.152 > ftp IN A 202.133.234.137 > pop IN A 203.133.234.135 > smtp IN A 202.133.234.135 > pop3 IN A 203.133.234.135 > ns1 IN A 201.133.234.137 > ns2 IN A 202.223.157.132 > [r...@cerebro ~]# SERIAL=$(awk '/serial/{print $1}' dns) > [r...@cerebro ~]# sed -i "/serial/s/$SERIAL/$(expr $SERIAL + 1)/" dns > [r...@cerebro ~]# cat dns > $ttl 300 > @ IN SOA dominio.com.br. admin.dominio.com.br. ( > 2005122003 ; serial > ESTA LINHA > 300 ; refresh every 10 hours > 300 ; retry after 1 hour > 300 ; expire after 1000 hours > 300 ; default ttl is 1 semana > ) > ; Define nameservers e mail server > > IN NS ns1 > IN NS ns2 > domÃo.com.br. IN A 200.243.178.153 > @ IN MX 10 mail > > www IN A 202.133.234.137 > ns IN A 203.223.157.130 > mail IN A 201.133.234.152 > ftp IN A 202.133.234.137 > pop IN A 203.133.234.135 > smtp IN A 202.133.234.135 > pop3 IN A 203.133.234.135 > ns1 IN A 201.133.234.137 > ns2 IN A 202.223.157.132 > [r...@cerebro ~]# > > Resumido: > [r...@cerebro ~]# SERIAL=$(awk '/serial/{print $1}' dns) > [r...@cerebro ~]# sed -i "/serial/s/$SERIAL/$(expr $SERIAL + 1)/" dns > > -- > > Flávio do Carmo Júnior aka waKKu > > 2009/3/18 Felipe <mailto:filipis_gomes%40yahoo.com.br>>: > > Boa tarde Pessoal, > > > > Estou me enrolando aqui para fazer um script que acrescente +1 ao > > último dígito da linha SERIAL de cada arquivo de zona de um servidor > DNS. > > > > Tenho um diretório com vários arquivos de zona, e dentro dele temos > > o SERIAL, cada um mais ou menos com o seguinte conteúdo: > > > > $ttl 300 > > @ IN SOA dominio.com.br. admin.dominio.com.br. ( > > 2005122002 ; serial > ESTA LINHA > > PRECISO ACRESCENTAR +1 AO NÚMERO, FICANDO COM 2005122003. > > 300 ; refresh every 10 hours > > 300 ; retry after 1 hour > > 300 ; expire after 1000 hours > > 300 ; default ttl is 1 semana > > ) > > ; Define nameservers e mail server > > > > IN NS ns1 > > IN NS ns2 > > domínio.com.br. IN A 200.243.178.153 > > @ IN MX 10 mail > > > > www IN A 202.133.234.137 > > ns IN A 203.223.157.130 > > mail IN A 201.133.234.152 > > ftp IN A 202.133.234.137 > > pop IN A 203.133.234.135 > > smtp IN A 202.133.234.135 > > pop3 IN A 203.133.234.135 > > ns1 IN A 201.133.234.137 > > ns2 IN A 202.223.157.132 > > > > Já consegui alterar a linha mail de cada um, substituindo com sed, > > mas ainda não consegui descobrir uma forma de acrescentar este número. > > > > Não sei se fui bem claro no que preciso, mas se puderem me ajudar :-) > > > > Abraços. > > > > > > [As partes desta mensagem que não continham texto foram removidas]
Re: [shell-script] Script para alteração de zona DNS.
Pessoal, show de bola, no fim das contas o superscript ficou da seguinte forma: #!/bin/bash for i in `ls -l | awk '{print $8}'`; do SERIAL=$(awk '/serial/{print $1}' $i) sed -i "/serial/s/$SERIAL/$(expr $SERIAL + 1)/" $i done Testei em 3 arquivos de zona e deu certo, incrementou 1 em cada arquivo :-). Abraço pessoal obrigado denovo. Felipe escreveu: > > Boa tarde Pessoal, > > Estou me enrolando aqui para fazer um script que acrescente +1 ao > último dígito da linha SERIAL de cada arquivo de zona de um servidor DNS. > > Tenho um diretório com vários arquivos de zona, e dentro dele temos > o SERIAL, cada um mais ou menos com o seguinte conteúdo: > > $ttl 300 > @ IN SOA dominio.com.br. admin.dominio.com.br. ( > 2005122002 ; serial > ESTA LINHA > PRECISO ACRESCENTAR +1 AO NÚMERO, FICANDO COM 2005122003. > 300 ; refresh every 10 hours > 300 ; retry after 1 hour > 300 ; expire after 1000 hours > 300 ; default ttl is 1 semana > ) > ; Define nameservers e mail server > > IN NS ns1 > IN NS ns2 > domínio.com.br. IN A 200.243.178.153 > @ IN MX 10 mail > > www IN A 202.133.234.137 > ns IN A 203.223.157.130 > mail IN A 201.133.234.152 > ftp IN A 202.133.234.137 > pop IN A 203.133.234.135 > smtp IN A 202.133.234.135 > pop3 IN A 203.133.234.135 > ns1 IN A 201.133.234.137 > ns2 IN A 202.223.157.132 > > Já consegui alterar a linha mail de cada um, substituindo com sed, > mas ainda não consegui descobrir uma forma de acrescentar este número. > > Não sei se fui bem claro no que preciso, mas se puderem me ajudar :-) > > Abraços. > > [As partes desta mensagem que não continham texto foram removidas]
[shell-script] Ajuda com teste de string
Boa tarde a todos, Sou novato em SH e estou encontrando dificuldades para tratar um teste com o comando "if" e gostaria de alguma dica, se possivel. Antes de começar, eu dei uma lida nas aulas do Julio para ter uma noção do que estava fazendo, porém estou com uma duvida num script para monitorar uma impressora T644 da Lexmark. Peguei este script na net e estou modificando conforme as minha necessidades aqui. O problema é o seguinte, este script é para o Nagios, eu testo as informações com uma MIB, e baseado na mensagem que a impressora mostra no painel eu faço o teste com o script pra dizer ao usuario o status atual da impressora, todas as mensagens estão funcionando normalmente, menos a mensagem mais "basica" a mensagen de: "Pronto." =( estou colando aqui o script para vocês analisarem se possivel: #!/bin/sh SCP="snmpget" ARGS='-c public -v 1 -O v' HOST=$1 OID='mib-2.43.16.5.1.2.1.1' CMD=`$SCP $ARGS $HOST $OID |sed 's/STRING: "//'` ST1=`$SCP $ARGS $HOST $OID |grep "Pronto. "` ST2=`$SCP $ARGS $HOST $OID |grep -i -o "Pronto. Bandeja 1 ausente."` ST3=`$SCP $ARGS $HOST $OID |grep -i -o "Inserir bandeja 1"` ST4=`$SCP $ARGS $HOST $OID |grep -i -o "Pronto. Pouco papel band. 1."` ST5=`$SCP $ARGS $HOST $OID |grep -i -o "Pronto. Bandeja 1 vazia."` ST6=`$SCP $ARGS $HOST $OID |grep -i -o "Fechar porta ou inserir"` ST7=`$SCP $ARGS $HOST $OID |grep -i -o "Ocupada. "` if [ "$ST1" = "Pronto. " ] ; then OUTPUT="${OUTPUT} OK - Impressora Pronta" STAT=0 elif [ "$ST2" = "Pronto. Bandeja 1 ausente." ] ; then OUTPUT="${OUTPUT} Critical - Bandeja 1 aberta." STAT=2 elif [ "$ST3" = "Inserir bandeja 1" ] ; then OUTPUT="${OUTPUT} Critical! - Inserir bandeja 1" STAT=2 elif [ "$ST4" = "Pronto. Pouco papel band. 1." ] ; then OUTPUT="${OUTPUT} OK - Pocuco Papel na Bandeja 1." STAT=1 elif [ "$ST5" = "Pronto. Bandeja 1 vazia." ] ; then OUTPUT="${OUTPUT} Critical! - Pronto. Bandeja 1 vazia." STAT=2 elif [ "$ST6" = "Fechar porta ou inserir" ] ; then OUTPUT="${OUTPUT} Critical! - Fechar porta ou inserir o toner" STAT=2 elif [ "$ST7" = "Ocupada. " ] ; then OUTPUT="${OUTPUT} OK - Ocupada. " STAT=0 else OUTPUT="${OUTPUT} Critical! - `echo $CMD`" STAT=2 fi echo $OUTPUT exit $STAT se vocês olahrem verão que o primeiro "if" teste pra ver se a impressora está "OK" e caso positivo, seria exeibido a mensagem de "OK - Impressora pronta" e por ultimo, caso nenhum dos teste fosse positivo seria retornada a mensagem que está no painel da impressora com status "Critical" seguido da mensagem que está no painel, porém, quando colocao o script pra rodar, ele me da mensagem de "Critical! - Pronto" sendo que o correto seria dar "OK - Impressora pronta". ja testei usar a opção com o "-i -o" que vi na net que serve para ignorar maiusculas e minusculas e pegar exatamente o conteudo gravado na variavel "CMD", porém, dessa forma os outros status não funcionam, e do jeito que está agora só não funciona o 1º "if". Pensei em tirar o 1º "if" de colocar que no "else" fosse informado OK, mais achei que seria um "gato" então preferi postar aqui pra pedir uma ajuda. Será que alguém consegue me ajudar? Obrigado! [As partes desta mensagem que não continham texto foram removidas]
[shell-script] Ajuda com teste de string
Boa tarde a todos, Sou novato em SH e estou encontrando dificuldades para tratar teste com o comando "if" Ajuda com teste de string
Res: [shell-script] Ajuda com teste de string
Bom dia, Eu até entendi o que você me disse, desta forma o codigo ficará menor e menos sujo né?! Estou estudando pra melhorar isto! =) Eu ainda estou lendo sobre o SH e ainda não cheguei nesta parte, o que eu pude entender, pra poder explicar melhor o meu problema é o seguinte: quando eu testo o primeiro "if" que verifica se o status é pronto, extiste algum erro neste pornto, pois o quando o status está em "pronto" o "if" não entende e vai pro fim do script me apresentando uma mensagem de "Critical" no lugar de "OK", acho que eu não estou sabendo filtrar corretamente o comando na variavel "ST1", porque todos os outros teste dão "OK". Será que consegui explicar melhor? Obrigado! Felipe MSN Messenger: flpe...@yahoo.com.br De: Cléoson Barreto Para: shell-script@yahoogrupos.com.br Enviadas: Terça-feira, 7 de Abril de 2009 22:22:16 Assunto: Re: [shell-script] Ajuda com teste de string Olá! Apenas uma sugestão: não seria melhor se utilizasses o case ao invés de if? Assim, no lugar de várias variáveis ST1, ST2, etc, filtraria o resultado do comando snmpget em apenas uma variável com o egrep, e depois utilizaria o case. Estou sem máquina com linux pra testar no momento e tentar dar uma ajuda melhor, mas acho que esse seria um caso para o case. :-) []'s Cléoson. http://farinhadigit al.blogspot. com/ 2009/4/7 César Vianna > Como não disseste qual a dificuldade, seguem links sobre o assunto: > > http://wiki. softwarelivre. org/TWikiBar/ TWikiBarPapo003# O_Comando_ if > > http://wiki. softwarelivre. org/TWikiBar/ TWikiBarPapo004# E_tome_de_ test > > 2009/4/7 Felipe > > > > > Boa tarde a todos, > > > > Sou novato em SH e estou encontrando dificuldades para tratar teste com o > > comando "if" > > > > Ajuda com teste de string > > > > > > > > -- > César Vianna > --- > Prefira o que é positivo e múltiplo; a diferença à uniformidade; o fluxo às > unidades; os agenciamentos móveis aos sistemas. > Gilles Deleuze & Felix Guattari > > [As partes desta mensagem que não continham texto foram removidas] > [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]
Res: [shell-script] Ajuda com teste de string
Olás, Então, fiz os testes com -eq, == e também retirei o espaço para tentar ver se funionava, porém continuo sem entender o que está ocorrendo. tem um outro if no script, que informa que a impressora está ocupada, que também um espaço no final e ele funciona normal, somente este if que não está batendo. eu acho que o problema está na parte do "sed" ou do "grep" um destes dois não está certo. será que tem alfuma forma de colocar algum coringa que pegue tudo? Felipe MSN Messenger: flpe...@yahoo.com.br De: Cléoson Barreto Para: shell-script@yahoogrupos.com.br Enviadas: Quarta-feira, 8 de Abril de 2009 10:42:15 Assunto: Re: [shell-script] Ajuda com teste de string Olá! É isso mesmo, acho que ficaria melhor seu código. Mas voltando à sua dúvida, no primeiro if você está comparando o conteúdo da string $ST1 com "Pronto. ". Note que entre o ponto e a aspa existe um espaço em branco. Se a string $ST1 não tiver esse espaço em branco, então esse if sempre vai ser falso. Será que não é isso? []'s Cléoson http://farinhadigit al.blogspot. com/ 2009/4/8 Felipe > Bom dia, > > Eu até entendi o que você me disse, desta forma o codigo ficará menor e > menos sujo né?! > Estou estudando pra melhorar isto! =) > Eu ainda estou lendo sobre o SH e ainda não cheguei nesta parte, o que eu > pude entender, pra poder explicar melhor o meu problema é o seguinte: > quando eu testo o primeiro "if" que verifica se o status é pronto, extiste > algum erro neste pornto, pois o quando o status está em "pronto" o "if" não > entende e vai pro fim do script me apresentando uma mensagem de "Critical" > no lugar de "OK", acho que eu não estou sabendo filtrar corretamente o > comando na variavel "ST1", porque todos os outros teste dão "OK". > > Será que consegui explicar melhor? > > Obrigado! > > Felipe > MSN Messenger: flpe...@yahoo. com.br > > > _ _ __ > De: Cléoson Barreto > > > Para: shell-script@ yahoogrupos. com.br > Enviadas: Terça-feira, 7 de Abril de 2009 22:22:16 > Assunto: Re: [shell-script] Ajuda com teste de string > Olá! > > Apenas uma sugestão: não seria melhor se utilizasses o case ao invés de > if? Assim, no lugar de várias variáveis ST1, ST2, etc, filtraria o > resultado > do comando snmpget em apenas uma variável com o egrep, e depois utilizaria > o > case. > > Estou sem máquina com linux pra testar no momento e tentar dar uma ajuda > melhor, mas acho que esse seria um caso para o case. :-) > > []'s > Cléoson. > http://farinhadigit al.blogspot. com/ > > 2009/4/7 César Vianna > > > Como não disseste qual a dificuldade, seguem links sobre o assunto: > > > > http://wiki. softwarelivre. org/TWikiBar/ TWikiBarPapo003# O_Comando_ if > > > > http://wiki. softwarelivre. org/TWikiBar/ TWikiBarPapo004# E_tome_de_ > test > > > > 2009/4/7 Felipe > > > > > > > > Boa tarde a todos, > > > > > > Sou novato em SH e estou encontrando dificuldades para tratar teste com > o > > > comando "if" > > > > > > Ajuda com teste de string > > > > > > > > > > > > > -- > > César Vianna > > --- > > Prefira o que é positivo e múltiplo; a diferença à uniformidade; o fluxo > às > > unidades; os agenciamentos móveis aos sistemas. > > Gilles Deleuze & Felix Guattari > > > > [As partes desta mensagem que não continham texto foram removidas] > > > > [As partes desta mensagem que não continham texto foram removidas] > > Veja quais são os assuntos do momento no Yahoo! +Buscados > http://br.maisbusca dos.yahoo. com > > [As partes desta mensa que não continham texto foram removidas]_ > [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]
Res: [shell-script] Ajuda com teste de string
Boa tarde Pessoal, ainda estou aqui lutando pra descobrir uma forma de resolver meu problema e estou precisando de uma informações que talvez alguém saiba. verifiquei que meu problema está realmente no comando "sed" não estou conseguindo pegar corretamente a informação que esta sendo passado pelo comand "snmpget" fiz um teste no console para ver o que exatamente estava aconteceu e digitei o seguinte: teste=`comando host|sed 's/STRING: "//'` despois imprimi oque guardado na variavel: echo $teste Resultado: Pronto. " como vocês veem o "sed" está guardando um "espaço" e uma "aspa" na variavel, como faço para arrumar o "sed" para que não sejam guardados esses dois caracteres, para que seja mostrado na tela apenas "Pronto" ou talvez "Pronto."? alguém pode dar um help? Valeu! Felipe MSN Messenger: flpe...@yahoo.com.br De: Cléoson Barreto Para: shell-script@yahoogrupos.com.br Enviadas: Quarta-feira, 8 de Abril de 2009 10:42:15 Assunto: Re: [shell-script] Ajuda com teste de string Olá! É isso mesmo, acho que ficaria melhor seu código. Mas voltando à sua dúvida, no primeiro if você está comparando o conteúdo da string $ST1 com "Pronto. ". Note que entre o ponto e a aspa existe um espaço em branco. Se a string $ST1 não tiver esse espaço em branco, então esse if sempre vai ser falso. Será que não é isso? []'s Cléoson http://farinhadigit al.blogspot. com/ 2009/4/8 Felipe > Bom dia, > > Eu até entendi o que você me disse, desta forma o codigo ficará menor e > menos sujo né?! > Estou estudando pra melhorar isto! =) > Eu ainda estou lendo sobre o SH e ainda não cheguei nesta parte, o que eu > pude entender, pra poder explicar melhor o meu problema é o seguinte: > quando eu testo o primeiro "if" que verifica se o status é pronto, extiste > algum erro neste pornto, pois o quando o status está em "pronto" o "if" não > entende e vai pro fim do script me apresentando uma mensagem de "Critical" > no lugar de "OK", acho que eu não estou sabendo filtrar corretamente o > comando na variavel "ST1", porque todos os outros teste dão "OK". > > Será que consegui explicar melhor? > > Obrigado! > > Felipe > MSN Messenger: flpe...@yahoo. com.br > > > _ _ __ > De: Cléoson Barreto > > > Para: shell-script@ yahoogrupos. com.br > Enviadas: Terça-feira, 7 de Abril de 2009 22:22:16 > Assunto: Re: [shell-script] Ajuda com teste de string > Olá! > > Apenas uma sugestão: não seria melhor se utilizasses o case ao invés de > if? Assim, no lugar de várias variáveis ST1, ST2, etc, filtraria o > resultado > do comando snmpget em apenas uma variável com o egrep, e depois utilizaria > o > case. > > Estou sem máquina com linux pra testar no momento e tentar dar uma ajuda > melhor, mas acho que esse seria um caso para o case. :-) > > []'s > Cléoson. > http://farinhadigit al.blogspot. com/ > > 2009/4/7 César Vianna > > > Como não disseste qual a dificuldade, seguem links sobre o assunto: > > > > http://wiki. softwarelivre. org/TWikiBar/ TWikiBarPapo003# O_Comando_ if > > > > http://wiki. softwarelivre. org/TWikiBar/ TWikiBarPapo004# E_tome_de_ > test > > > > 2009/4/7 Felipe > > > > > > > > Boa tarde a todos, > > > > > > Sou novato em SH e estou encontrando dificuldades para tratar teste com > o > > > comando "if" > > > > > > Ajuda com teste de string > > > > > > > > > > > > > -- > > César Vianna > > --- > > Prefira o que é positivo e múltiplo; a diferença à uniformidade; o fluxo > às > > unidades; os agenciamentos móveis aos sistemas. > > Gilles Deleuze & Felix Guattari > > > > [As partes desta mensagem que não continham texto foram removidas] > > > > [As partes desta mensagem que não continham texto foram removidas] > > Veja quais são os assuntos do momento no Yahoo! +Buscados > http://br.maisbusca dos.yahoo. com > > [As partes desta mensa que não continham texto foram removidas]_ > [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]
Res: [shell-script] Ajuda com teste de string
Obrigado pessoal, deu certo o sed =) ainda preciso de mto estudo mesmo! =P Felipe MSN Messenger: flpe...@yahoo.com.br De: Julio C. Neves Para: shell-script@yahoogrupos.com.br Enviadas: Terça-feira, 14 de Abril de 2009 16:00:27 Assunto: Re: [shell-script] Ajuda com teste de string Fala Felipe, isso deve funcionar: *teste=`comando host|sed -r 's/STRING: "(.*) .*/\1/'`* -- Abração, Julio *Cursos de Shell e Zenity nos finais de semana: - Em SP ligue (11) 2125-4747; - Em DF ligue (61) 3223-3000; - No RJ brevemente; - Turmas fechadas em outras cidades ligue (21) 8112-9988* 2009/4/14 Felipe > > > Boa tarde Pessoal, > ainda estou aqui lutando pra descobrir uma forma de resolver meu problema e > estou precisando de uma informações que talvez alguém saiba. > verifiquei que meu problema está realmente no comando "sed" não estou > conseguindo pegar corretamente a informação que esta sendo passado pelo > comand "snmpget" > fiz um teste no console para ver o que exatamente estava aconteceu e > digitei o seguinte: > teste=`comando host|sed 's/STRING: "//'` > > despois imprimi oque guardado na variavel: > echo $teste > > Resultado: > Pronto. " > > como vocês veem o "sed" está guardando um "espaço" e uma "aspa" na > variavel, como faço para arrumar o "sed" para que não sejam guardados esses > dois caracteres, para que seja mostrado na tela apenas "Pronto" ou talvez > "Pronto."? > > alguém pode dar um help? > > Valeu! > > Felipe > MSN Messenger: flpe...@yahoo. com.br > > > _ _ __ > De: Cléoson Barreto > > > Para: shell-script@ yahoogrupos. com.br > Enviadas: Quarta-feira, 8 de Abril de 2009 10:42:15 > Assunto: Re: [shell-script] Ajuda com teste de string > > Olá! > > É isso mesmo, acho que ficaria melhor seu código. Mas voltando à sua > dúvida, no primeiro if você está comparando o conteúdo da string $ST1 com > "Pronto. ". Note que entre o ponto e a aspa existe um espaço em branco. Se > a > string $ST1 não tiver esse espaço em branco, então esse if sempre vai ser > falso. Será que não é isso? > > []'s > Cléoson > http://farinhadigit al.blogspot. com/ > > 2009/4/8 Felipe > > > Bom dia, > > > > Eu até entendi o que você me disse, desta forma o codigo ficará menor e > > menos sujo né?! > > Estou estudando pra melhorar isto! =) > > Eu ainda estou lendo sobre o SH e ainda não cheguei nesta parte, o que eu > > pude entender, pra poder explicar melhor o meu problema é o seguinte: > > quando eu testo o primeiro "if" que verifica se o status é pronto, > extiste > > algum erro neste pornto, pois o quando o status está em "pronto" o "if" > não > > entende e vai pro fim do script me apresentando uma mensagem de > "Critical" > > no lugar de "OK", acho que eu não estou sabendo filtrar corretamente o > > comando na variavel "ST1", porque todos os outros teste dão "OK". > > > > Será que consegui explicar melhor? > > > > Obrigado! > > > > Felipe > > MSN Messenger: flpe...@yahoo. com.br > > > > > > _ _ __ > > De: Cléoson Barreto 40gmail.com> > > > > > Para: shell-script@ yahoogrupos. com.br com.br> > > Enviadas: Terça-feira, 7 de Abril de 2009 22:22:16 > > Assunto: Re: [shell-script] Ajuda com teste de string > > Olá! > > > > Apenas uma sugestão: não seria melhor se utilizasses o case ao invés de > > if? Assim, no lugar de várias variáveis ST1, ST2, etc, filtraria o > > resultado > > do comando snmpget em apenas uma variável com o egrep, e depois > utilizaria > > o > > case. > > > > Estou sem máquina com linux pra testar no momento e tentar dar uma ajuda > > melhor, mas acho que esse seria um caso para o case. :-) > > > > []'s > > Cléoson. > > http://farinhadigit al.blogspot. com/ > > > > 2009/4/7 César Vianna > > > > > Como não disseste qual a dificuldade, seguem links sobre o assunto: > > > > > > http://wiki. softwarelivre. org/TWikiBar/ TWikiBarPapo003# O_Comando_ > if > > > > > > http://wiki. softwarelivre. org/TWikiBar/ TWikiBarPapo004# E_tome_de_ > > test > > > > > > 2009/4/7 Felipe > > > > > > > > > > > Boa tarde a todos, > > > > > > > > Sou novato em SH e estou encontrando dificuldades para tratar teste > com > > o > > >
[shell-script] Duvida com o sed/grep
Bom dia pra Todos, Estou aqui estudando melhor o Shell e me deparei com uma duvida, coloquei o seguinte comando no shell: CMD=`snmpget host OID |sed 's/Hex-STRING: "//'` Mando exibir o conteudo guardado em $CMD e o resultado é: Hex-STRING: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 00 Ok! Depois montei um script para testar este resultado, pois sei por exemplo que esse código quer dizer "Funcionando" mas antes faço um grep pra pegar apenas o que vem depois de Hex-STRING: ou seja quero apenas comparar o 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 00. Então guardo isso em uma outra variavel. Por exemplo $TEST. E coloco da seguinte forma TEST=`snmpget host OID |grep -o "20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 00" e agora comparo com o comando if que coloquei no script: if [ "$TEST" = "20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 00" ] ; then echo "Funcionando!" else echo "Parado!" fi Neste caso a mensagem que deveria ser mostrada na tela seria "Funcionando!", porém, a mensagem que está me retornando é "Parado!". Então minhas duvidas: 1º Fiz algo errado? 2º Isso está muito sujo, e posso deixar o codigo melhor? Por que o resultado esperado não fio retornado corretamente? Obrigado desde Pessoal! Felipe MSN Messenger: flpe...@yahoo.com.br 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] Duvida com o sed/grep
fiz o echo na $test antes do "if" e ele não trouxe nenhuma informação, imprimiu uma linha em branco. A crase faltou aqui no email, porém, no script ta OK. Pq será que o grep não conseguiu achar nada e deu linha em branco? será que pelo fato de ter esse monte de numeros eu tenho que tratar diferente? alguém ja viu isso? Pelo que eu entendi lendo o curso do Julio e outros na net, quando agente usa aspas duplas entendesse que ele irá tratar o que estiver dentro como string, inclusive numeros e espaços. estou errado? Felipe MSN Messenger: flpe...@yahoo.com.br De: Marcus Gmail Para: shell-script@yahoogrupos.com.br Enviadas: Sexta-feira, 17 de Abril de 2009 10:19:22 Assunto: Re: [shell-script] Duvida com o sed/grep Voce pode colocar um echo $TEST antes do if para ver a saida e entender melhor. Em todo caso, no que voce mandou para a lista faltou " ` " (crase) no final da linha, no momento da atribuicao de valor a variavel. Voce pode usar var=$(comando) tambem. Abs! Fique com Deus! Felipe escreveu: > > > Bom dia pra Todos, > > Estou aqui estudando melhor o Shell e me deparei com uma duvida, > coloquei o seguinte comando no shell: > CMD=`snmpget host OID |sed 's/Hex-STRING: "//'` > Mando exibir o conteudo guardado em $CMD e o resultado é: > Hex-STRING: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 00 > Ok! > Depois montei um script para testar este resultado, pois sei por > exemplo que esse código quer dizer "Funcionando" mas antes faço um > grep pra pegar apenas o que vem depois de Hex-STRING: ou seja quero > apenas comparar o 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 00. > Então guardo isso em uma outra variavel. Por exemplo $TEST. > E coloco da seguinte forma TEST=`snmpget host OID |grep -o "20 20 20 > 20 20 20 20 20 20 20 20 20 20 20 20 20 00" e agora comparo com o > comando if que coloquei no script: > > if [ "$TEST" = "20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 00" ] > ; then > echo "Funcionando! " > else > echo "Parado!" > fi > > Neste caso a mensagem que deveria ser mostrada na tela seria > "Funcionando! ", porém, a mensagem que está me retornando é "Parado!". > > Então minhas duvidas: > 1º Fiz algo errado? > 2º Isso está muito sujo, e posso deixar o codigo melhor? > Por que o resultado esperado não fio retornado corretamente? > > Obrigado desde Pessoal! > > Felipe > MSN Messenger: flpe...@yahoo. com.br <mailto:flpe007% 40yahoo.com. br> > > Veja quais são os assuntos do momento no Yahoo! +Buscados > http://br.maisbusca dos.yahoo. com <http://br.maisbusca dos.yahoo. com> > > [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]
[shell-script] transformar para maiuscula
Boa tarde!!! com faz para pegar um texto minisculo, converter para maiusculo e atribuir o resultado a uma nova variavel pesquisei e encontrei isso aqui: echo $VAR_NAME | tr ['a-z'] ['A-Z'] mas nao consigo atribuir isso a uma variavel.. por exemplo varnew=(echo $VAR_NAME | tr ['a-z'] ['A-Z']) obrigado [As partes desta mensagem que não continham texto foram removidas]
Re: [shell-script] transformar para maiuscula
legal funcionou.. mas tb funcionou usando crase varnew=`echo $VAR | tr ['a-i'] ['A-I']` tem diferença??? valeu!!! 2008/7/2 Welder Kopti <[EMAIL PROTECTED]>: > Y0 > > Usando o seu exemplo.. faltou o "$" > > varnew=$(echo $VAR_NAME | tr ['a-z'] ['A-Z']) > ai funciona.. > > - Mensagem original > De: Felipe Regalgo <[EMAIL PROTECTED] > > Para: shell-script@yahoogrupos.com.br > Enviadas: Quarta-feira, 2 de Julho de 2008 15:46:26 > Assunto: [shell-script] transformar para maiuscula > > > Boa tarde!!! > > com faz para pegar um texto minisculo, converter para maiusculo e atribuir > o > resultado a uma nova variavel > > pesquisei e encontrei isso aqui: > echo $VAR_NAME | tr ['a-z'] ['A-Z'] > > mas nao consigo atribuir isso a uma variavel.. por exemplo > varnew=(echo $VAR_NAME | tr ['a-z'] ['A-Z']) > > 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 > > Novos endereços, o Yahoo! que você conhece. Crie um email novo com a sua > cara @ymail.com ou @rocketmail.com. > http://br.new.mail.yahoo.com/addresses > > [As partes desta mensagem que não continham texto foram removidas] > > > [As partes desta mensagem que não continham texto foram removidas]
Re: [shell-script] Re: Lower em um caractere
hahaha, é verdade, troquei as bolas :D [As partes desta mensagem que não continham texto foram removidas]
Re: [shell-script] Armazenar valores na array
ah, eu atribui 0 a variavel n no inicio do script, porem, quando fui colar sem querer me esqueci... n=0 ... [As partes desta mensagem que não continham texto foram removidas]
Re: [shell-script] Armazenar valores na array
Guilherme M Gall, Não só ajudou como resolveu o problema! Valeu! [As partes desta mensagem que não continham texto foram removidas]
Re: [shell-script] Cortar caractere de maior valor (ultimo da faixa vertical da saida do sort)
Exatamente Thiago! Era isso mesmo que eu queria! Valeu! [As partes desta mensagem que não continham texto foram removidas]
Re: [shell-script] Tabelas hash
Humm, Muito obrigado! [As partes desta mensagem que não continham texto foram removidas]
Re: [shell-script] Comando typeset
MrBits, é verdade, menas não existe :) Valeu as dicas, Thiago e MrBits. Grato! principalmente pela correção :P Té + [As partes desta mensagem que não continham texto foram removidas]
Re: [shell-script] Dúvida com cut
Tiago B Peczenyj Obrigado pela resposta, mas no meu caso não funcionou, por que estou fazendo com cadeia de caracteres e não com numeros, também não consegui entender direito o que voce quis passar. Elias Andrade Ainda não to acustumado com o Awk, mas vou dar uma lida sobre ele também. é que pelo exemplo dado, some alguns caracteres desejaveis, como: "/sbin/". Mas valeu! [As partes desta mensagem que não continham texto foram removidas]
Re: [shell-script] Dúvida com cut
Ah sim, não havia percebido. André Saunite, obrigado pelo esclarecimento, ou melhor: pelo esclarecimento do esclarecimento. (: [As partes desta mensagem que não continham texto foram removidas]
Re: [shell-script] Organizar entradas em um arquivo...
George, Veja se é isso que quer $ cat /etc/group | tail -n5 | tr [a-z] [A-Z] SQUID:X:31: NETDEV:X:1019: AVAHI:X:1020: DHCP:X:1021: BITLBEE:X:1022: Note que tive a saída em High Case graças ao comando "tr". [As partes desta mensagem que não continham texto foram removidas]
Re: [shell-script] Bash simplesmente fecha em função de um comando.
MrBits e Cesar. A dúvida não é quanto ao resultado da saida do comando propriamente dito tr [a-z] [A-Z] < /etc/gentoo-release. É só uma curiosidade o fato de a bash "finalizar" assim em função deste comando. [As partes desta mensagem que não continham texto foram removidas]
Re: [shell-script] Bash simplesmente fecha em função de um comando.
Talvez ela ficou até com medo da lógica do comando e decidiu se auto-destruir, mas de toda forma, é uma curiosidade (pra mim que estou iniciando na coisa ainda). [As partes desta mensagem que não continham texto foram removidas]
Re: [shell-script] Bash simplesmente fecha em função de um comando.
Miranda, é sim: $ cat /etc/gentoo-release Gentoo Base System release 2.0.0 [As partes desta mensagem que não continham texto foram removidas]
Re: [shell-script] Buscar maior valor de uma array
Valeu Thiago, Novamente (: [As partes desta mensagem que não continham texto foram removidas]
Re: [shell-script] Pegar valor de retorno
Depois de um bom tempo procurando encontrei a solucao: $ echo $? [As partes desta mensagem que não continham texto foram removidas]
Re: [shell-script] bc ou expr
GRUPOS=$(expr `wc -l < $LISTA` / 15) # como o seu antigo # verifica se o resto da divisão não é zero. sendo o caso, soma 1 ao resultado if [ $(expr $LISTA % 15) -ne 0 ]; then GRUPOS=$(expr $GRUPOS + 1); 2009/9/24 sergiolinux1 > > > Ola pessoal, obrigado pela ajuda de sempre. > > Tenho um arquivo com 66 linhas (esse numero pode variar para + ou -) > > Preciso "separar" em grupos de 15 e para saber quantos grupos tenho uso > > GRUPOS=$(expr `wc -l < $LISTA` / 15) > > O resultado é 4, então tenho 4 grupos de 15, certo? Errado porque 66 / 15 = > 4.4. > > Pergunto: Como fazer "interpretar" isso? Para ele ler 4.4? Ai se for > diferente de um inteiro eu adiciono mais 1 na contagem de grupos. > > ex: se 66 / 15 for diferente de um inteiro soma 1. > > Não sei como trabalhar com ponto flutuante. Algem tem alguma idéia? > > Obrigado > > > [As partes desta mensagem que não continham texto foram removidas]
[shell-script] Share my happiness!!!
Hi, I am willing to give you a big surprise: . I bought an Apple Mac book one week ago from this website. Now, I have received it. This product quality is very good. They also sell phones, TV, motors and so on. By the way, they mainly sell new and original products and they have many good feedback. Because The upcoming Christmas and New Year's, so many companies are promoting their products. ooaap website also have very competitive prices. If you need these products, you can have a look. It is a good chance that you should not lose. Greetings!
[shell-script] limpar lista de e-mail
oi, tenho uma lista de e-mail em txt no formato: nome_do_contato <[EMAIL PROTECTED]>, nome_do_contato <[EMAIL PROTECTED]>, nome_do_contato <[EMAIL PROTECTED]>, nome_do_contato <[EMAIL PROTECTED]>, nome_do_contato <[EMAIL PROTECTED]>, nome_do_contato <[EMAIL PROTECTED]>, nome_do_contato <[EMAIL PROTECTED]>, nome_do_contato <[EMAIL PROTECTED]>, nome_do_contato <[EMAIL PROTECTED]>, gostaria de retirar somente os e-mails sem os nomes preciso tirar o que tá entre as < > e colocar em um arquivo txt, nesse formato: [EMAIL PROTECTED], [EMAIL PROTECTED], [EMAIL PROTECTED], [EMAIL PROTECTED], [EMAIL PROTECTED], [EMAIL PROTECTED], [EMAIL PROTECTED], [EMAIL PROTECTED], [EMAIL PROTECTED] como posso fazer? o grep faz? qual script resolve no meu caso? -- Felipe Santos [EMAIL PROTECTED] (51) 9626.2600 (51) 8418.5809 Aprendemos a voar como os pássaros, a nadar como os peixes; mas não aprendemos a simples arte de vivermos juntos como irmãos. M. Luther King Nada de pedágio na internet O Congresso americano está prestes a realizar uma votação histórica sobre o futuro da internet. Decidirá se a internet vai permanecer uma tecnologia livre e aberta que fomenta a inovação, o crescimento econômico e a comunicação democrática ou se será transformada em propriedade de empresas a cabo e companhias telefônicas, que poderão colocar cabines de pedágio em todos os acessos e saídas da auto-estrada da informação. - 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] - 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
[shell-script] limpar lista de e-mail
oi, tenho uma lista de e-mail em txt no formato: nome_do_contato <[EMAIL PROTECTED]>, nome_do_contato <[EMAIL PROTECTED]>, nome_do_contato <[EMAIL PROTECTED]>, nome_do_contato <[EMAIL PROTECTED]>, nome_do_contato <[EMAIL PROTECTED]>, nome_do_contato <[EMAIL PROTECTED]>, nome_do_contato <[EMAIL PROTECTED]>, nome_do_contato <[EMAIL PROTECTED]>, nome_do_contato <[EMAIL PROTECTED]>, gostaria de retirar somente os e-mails sem os nomes preciso tirar o que tá entre as < > e colocar em um arquivo txt, nesse formato: [EMAIL PROTECTED], [EMAIL PROTECTED], [EMAIL PROTECTED], [EMAIL PROTECTED], [EMAIL PROTECTED], [EMAIL PROTECTED], [EMAIL PROTECTED], [EMAIL PROTECTED], [EMAIL PROTECTED] como posso fazer? o grep faz? qual script resolve no meu caso? -- Felipe Santos [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]> (51) 9626.2600 (51) 8418.5809 Aprendemos a voar como os pássaros, a nadar como os peixes; mas não aprendemos a simples arte de vivermos juntos como irmãos. M. Luther King *Nada de pedágio na internet* <http://www.eduardostefani.eti.br/index.php?acao=noticias&wnoLink=./noticias/not0148.php> O Congresso americano está prestes a realizar uma votação histórica sobre o futuro da internet. Decidirá se a internet vai permanecer uma tecnologia livre e aberta que fomenta a inovação, o crescimento econômico e a comunicação democrática ou se será transformada em propriedade de empresas a cabo e companhias telefônicas, que poderão colocar cabines de pedágio em todos os acessos e saídas da auto-estrada da informação. -- Felipe Santos [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]> (51) 9626.2600 (51) 8418.5809 Aprendemos a voar como os pássaros, a nadar como os peixes; mas não aprendemos a simples arte de vivermos juntos como irmãos. M. Luther King *Nada de pedágio na internet* <http://www.eduardostefani.eti.br/index.php?acao=noticias&wnoLink=./noticias/not0148.php> O Congresso americano está prestes a realizar uma votação histórica sobre o futuro da internet. Decidirá se a internet vai permanecer uma tecnologia livre e aberta que fomenta a inovação, o crescimento econômico e a comunicação democrática ou se será transformada em propriedade de empresas a cabo e companhias telefônicas, que poderão colocar cabines de pedágio em todos os acessos e saídas da auto-estrada da informação. -- Felipe Santos [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]> (51) 9626.2600 (51) 8418.5809 Aprendemos a voar como os pássaros, a nadar como os peixes; mas não aprendemos a simples arte de vivermos juntos como irmãos. M. Luther King *Nada de pedágio na internet* <http://www.eduardostefani.eti.br/index.php?acao=noticias&wnoLink=./noticias/not0148.php> O Congresso americano está prestes a realizar uma votação histórica sobre o futuro da internet. Decidirá se a internet vai permanecer uma tecnologia livre e aberta que fomenta a inovação, o crescimento econômico e a comunicação democrática ou se será transformada em propriedade de empresas a cabo e companhias telefônicas, que poderão colocar cabines de pedágio em todos os acessos e saídas da auto-estrada da informação. -- Felipe Santos [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]> (51) 9626.2600 (51) 8418.5809 Aprendemos a voar como os pássaros, a nadar como os peixes; mas não aprendemos a simples arte de vivermos juntos como irmãos. M. Luther King *Nada de pedágio na internet* <http://www.eduardostefani.eti.br/index.php?acao=noticias&wnoLink=./noticias/not0148.php> O Congresso americano está prestes a realizar uma votação histórica sobre o futuro da internet. Decidirá se a internet vai permanecer uma tecnologia livre e aberta que fomenta a inovação, o crescimento econômico e a comunicação democrática ou se será transformada em propriedade de empresas a cabo e companhias telefônicas, que poderão colocar cabines de pedágio em todos os acessos e saídas da auto-estrada da informação. - 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
Re: [shell-script] limpar lista de e-mail
obrigado ao pessoal pelas dicas e desculpa eu ter reenviado o e-mail Felipe Santos escreveu: > oi, tenho uma lista de e-mail em txt no formato: > > nome_do_contato <[EMAIL PROTECTED]>, nome_do_contato > <[EMAIL PROTECTED]>, nome_do_contato <[EMAIL PROTECTED]>, > nome_do_contato <[EMAIL PROTECTED]>, nome_do_contato > <[EMAIL PROTECTED]>, nome_do_contato <[EMAIL PROTECTED]>, > nome_do_contato <[EMAIL PROTECTED]>, nome_do_contato > <[EMAIL PROTECTED]>, nome_do_contato <[EMAIL PROTECTED]>, > > gostaria de retirar somente os e-mails sem os nomes preciso tirar o que > tá entre as < > e colocar em um arquivo txt, nesse formato: > > [EMAIL PROTECTED], [EMAIL PROTECTED], [EMAIL PROTECTED], > [EMAIL PROTECTED], [EMAIL PROTECTED], [EMAIL PROTECTED], > [EMAIL PROTECTED], [EMAIL PROTECTED], [EMAIL PROTECTED] > > como posso fazer? > > o grep faz? qual script resolve no meu caso? > > -- > > Felipe Santos > [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]> > (51) 9626.2600 (51) 8418.5809 > > Aprendemos a voar como os pássaros, a nadar como os peixes; mas não > aprendemos a simples arte de vivermos juntos como irmãos. > > M. Luther King > > *Nada de pedágio na internet* > <http://www.eduardostefani.eti.br/index.php?acao=noticias&wnoLink=./noticias/not0148.php > > <http://www.eduardostefani.eti.br/index.php?acao=noticias&wnoLink=./noticias/not0148.php>> > > > > > O Congresso americano está prestes a realizar uma votação histórica > sobre o futuro da internet. Decidirá se a internet vai permanecer uma > tecnologia livre e aberta que fomenta a inovação, o crescimento > econômico e a comunicação democrática ou se será transformada em > propriedade de empresas a cabo e companhias telefônicas, que poderão > colocar cabines de pedágio em todos os acessos e saídas da auto-estrada > da informação. > > > > -- > > Felipe Santos > [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]> > (51) 9626.2600 (51) 8418.5809 > > Aprendemos a voar como os pássaros, a nadar como os peixes; mas não > aprendemos a simples arte de vivermos juntos como irmãos. > > M. Luther King > > *Nada de pedágio na internet* > <http://www.eduardostefani.eti.br/index.php?acao=noticias&wnoLink=./noticias/not0148.php > > <http://www.eduardostefani.eti.br/index.php?acao=noticias&wnoLink=./noticias/not0148.php>> > > > > > O Congresso americano está prestes a realizar uma votação histórica > sobre o futuro da internet. Decidirá se a internet vai permanecer uma > tecnologia livre e aberta que fomenta a inovação, o crescimento > econômico e a comunicação democrática ou se será transformada em > propriedade de empresas a cabo e companhias telefônicas, que poderão > colocar cabines de pedágio em todos os acessos e saídas da auto-estrada > da informação. > > > > -- > > Felipe Santos > [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]> > (51) 9626.2600 (51) 8418.5809 > > Aprendemos a voar como os pássaros, a nadar como os peixes; mas não > aprendemos a simples arte de vivermos juntos como irmãos. > > M. Luther King > > *Nada de pedágio na internet* > <http://www.eduardostefani.eti.br/index.php?acao=noticias&wnoLink=./noticias/not0148.php > > <http://www.eduardostefani.eti.br/index.php?acao=noticias&wnoLink=./noticias/not0148.php>> > > > > > O Congresso americano está prestes a realizar uma votação histórica > sobre o futuro da internet. Decidirá se a internet vai permanecer uma > tecnologia livre e aberta que fomenta a inovação, o crescimento > econômico e a comunicação democrática ou se será transformada em > propriedade de empresas a cabo e companhias telefônicas, que poderão > colocar cabines de pedágio em todos os acessos e saídas da auto-estrada > da informação. > > > > > > -- > > Felipe Santos > [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]> > (51) 9626.2600 (51) 8418.5809 > > Aprendemos a voar como os pássaros, a nadar como os peixes; mas não > aprendemos a simples arte de vivermos juntos como irmãos. > > M. Luther King > > *Nada de pedágio na internet* > <http://www.eduardostefani.eti.br/index.php?acao=noticias&wnoLink=./noticias/not0148.php > > <http://www.eduardostefani.eti.br/index.php?acao=noticias&wnoLink=./noticias/not0148.php>> > > > > > O Congresso americano está prestes a realizar uma votação histórica > sobre o futuro da internet. Decidirá se a internet vai permanecer uma > tecnologia livre e aberta que fomenta a inovação, o crescimento > econômico e a comunicação democrática ou se será transformada em &g
Re: [shell-script] Converter caracter para cód igo ASCII
acho q isso funciona... caractere para cod_ascii: printf '%d' "'A" 65 cod_ascii para caractere: echo "65" | awk '{ printf("%c", $1) };' A Sérgio Durigan Júnior <[EMAIL PROTECTED]> escreveu: Olá pessoal, Adepto da famosa frase shellzeira "não pergunte se tem como fazer, pergunte como se faz", resolvi desistir de minhas tentativas frustradas de encontrar uma solução pra esse problema e recorrer à lista. Gostaria de saber como eu converto um caracter para código ASCII (e vice-versa) em shell script. Não encontrei programa algum que faça isso! Tentei até usar o printf, mas não foi possível: $ printf "%d" 'c' -bash: printf: c: invalid number $ Como não quero escrever um programinha em C pra fazer isso, queria saber se tem como fazer usando as ferramentas em Shell ;-). Obrigado! Sérgio. = Felipe Pavanello Sultani - Yahoo! Acesso Grátis - Internet rápida e grátis. Instale o discador agora! [As partes desta mensagem que não continham texto foram removidas]
Re: [shell-script] Ajuda com script para instalação de pacotes no Ubuntu
Nossa fiquei impressionado, juro que ainda não tinha ouvido, lido ou escutado sobre "zenity" adorei d+. Mas agora você me deu uma outra idéia ! Você sabe (ou alguém :D ) como posso fazer para este script pegar diversos valores um em cada linha? por exemplo: # amarok k3b audacious digikam firefox thunderbird e agora um script que pega cada um dos comandos (pacotes acima) e prossegue com a instalação ... será que tem como fazer isto? Imaginem, que tenho uma lista de 200 programas, libs, codecs, fonts, entre outras coisas, tudo isso para instalar. Se usar este maravilhoso script ** Obrigado mais uma vez Édnei Rodrigues ** que aliás salvei em minha pasta exclusiva para Shell Scripts... ele ficará enorme com todos os pacotes. Na real eu fiz isso mas gostaria de simplificar. Se alguém souber como Valew !! :D 2008/4/4 Édnei Rodrigues <[EMAIL PROTECTED]>: > Essa eu sei! :D > Assim ó: > cria um arquivo qualquer .sh , assim : > > #!/bin/bash > > zenity --question --text "Deseja efetuar a instalação?" > sudo apt-get -y install amarok 2> logerror_amarok_install.txt | tee > log_amarok.txt | zenity --progress --pulsate > if [ ${PIPESTATUS[0]} = 0 ]; then >zenity --info --text "Instalação efetuada com sucesso!" >else >zenity --error --text "Erro na instalação!" >cat logerror_amarok_install.txt | zenity --text-info --title "Log > de > erro" --width 530 --height 300 >fi > > sudo apt-get -y install k3b 2> logerror_k3b_install.txt | tee log_k3b.txt > | > zenity --progress --pulsate > if [ ${PIPESTATUS[0]} = 0 ]; then >zenity --info --text "Instalação efetuada com sucesso!" >else >zenity --error --text "Erro na instalação!" >cat logerror_k3b_install.txt | zenity --text-info --title "Log de > erro" --width 530 --height 300 >fi > > > > O zenity é uma biblioteca do Gnome, para interface gráfica do shell script > ! > > Pego a manha? > Em 03/04/08, podestafox <[EMAIL PROTECTED]> escreveu: > > > > Olá amigos, esta é minha primeira mensagem como usuário de > shell-script. > > Desde que conheci o Ubuntu e shell-script me apaixonei. > > > > Minha dúvida é o seguinte, eu usei o aptoncd para salvar meus > > programas em cd e depois carregar de volta para o cache apt do ubuntu. > > > > O que procuro é um script que seja interativo, no caso, na instalação > > de pacotes. > > > > Um exemplo: > > > > Eu crio o script com os pacotes separados por categoria: > > > > instalaMultimidia { > > pergunta se deseja instalar pacote "amarok"; > > > > if "sim"; > > instala e passa para o próximo programa; > > > > else "não"; > > passa para o próximo programa e não instala > > > > } > > > > exit > > > > . > > > > Eu tentei fazer com os comando normais > > > > echo Instalando amarok > > sleep 1 > > sudo apt-get -y install amarok > > echo instalado > > sleep 3 > > echo Instalando amarok > > sleep 1 > > sudo apt-get -y install k3b > > > > Alguém sabe como posso fazer para deixar o que quero automatizado? > > > > Obrigado > > -- > > Felipe Podestá dos Santos > > > > > > > > > [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 > > > -- Felipe Podestá dos Santos E-mail's: [EMAIL PROTECTED], [EMAIL PROTECTED], [EMAIL PROTECTED] [As partes desta mensagem que não continham texto foram removidas]
[shell-script] Extrair informações de arquivos em pastas recursivamente
Olá, Sou novo na lista e em shell-script. Tive apenas um curso super-rápido com o Júlio Neves no III Eslam e já li um pouco (bem pouco). Preciso com um script entrar em uma árvore de pastas e ir catando as informações de todos os arquivos lá dentro. Alguém pode me passar o caminho das pedras? Abraço, Felipe Costa - 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 - 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
[shell-script] Re: livro para program��o de shell scrip0t
Eu também quero as apostilas se for possÃvel [EMAIL PROTECTED] Abraço, Felipe --- shell-script@yahoogrupos.com.br wrote: > Existem 25 mensagens sobre este tópico. > > Tópicos contidos neste resumo: > > 1. livro para programção de shell scrip0t >De: "Rafael Nery" > <[EMAIL PROTECTED]> > 2. Re: livro para programção de shell scrip0t >De: Leandro Costa <[EMAIL PROTECTED]> > 3. Re: livro para programção de shell scrip0t >De: Tiago Barcellos Peczenyj > <[EMAIL PROTECTED]> > 4. Apostila Shell Script >De: Luiz Gustavo Marques Póvoa > <[EMAIL PROTECTED]> > 5. Re: livro para programção de shell scrip0t >De: Mauricio <[EMAIL PROTECTED]> > 6. Re: livro para programção de shell scrip0t >De: Gentil de Bortoli Jr > <[EMAIL PROTECTED]> > 7. Re: Apostila Shell Script >De: Fábio Henrique > <[EMAIL PROTECTED]> > 8. Re: Apostila Shell Script >De: André Lessa > <[EMAIL PROTECTED]> > 9. Re: Apostila Shell Script >De: "leka" <[EMAIL PROTECTED]> > 10. Re: livro para programção de shell scrip0t >De: Fabricio Lopes de Souza > <[EMAIL PROTECTED]> > 11. Separar pacote - versao de uma lista >De: Fabricio Lopes de Souza > <[EMAIL PROTECTED]> > 12. Re: Apostila Shell Script >De: Tiago Schievenin > <[EMAIL PROTECTED]> > 13. Leitura de arq texto >De: Pacelli <[EMAIL PROTECTED]> > 14. Re: Leitura de arq texto >De: Tiago Barcellos Peczenyj > <[EMAIL PROTECTED]> > 15. Re: Separar pacote - versao de uma lista >De: Gentil de Bortoli Jr > <[EMAIL PROTECTED]> > 16. RES: livro para programção de shell scrip0t >De: Julio Cezar Neves - DATAPREVRJ > <[EMAIL PROTECTED]> > 17. Re: Separar pacote - versao de uma lista >De: Mauricio <[EMAIL PROTECTED]> > 18. Re: Separar pacote - versao de uma lista >De: Tiago Barcellos Peczenyj > <[EMAIL PROTECTED]> > 19. Re: Apostila Shell Script >De: Gentil de Bortoli Jr > <[EMAIL PROTECTED]> > 20. Shell Script envio de Spam >De: "meucomputador2006" > <[EMAIL PROTECTED]> > 21. Re: Shell Script envio de Spam >De: "Alexandre Umino (Spin)" > <[EMAIL PROTECTED]> > 22. Script para grep recursivo >De: Alain <[EMAIL PROTECTED]> > 23. Re: Shell Script envio de Spam >De: Tiago F Bianchini > <[EMAIL PROTECTED]> > 24. Re: Script para grep recursivo >De: Gentil de Bortoli Jr > <[EMAIL PROTECTED]> > 25. Re: Re: Apostila Shell Script >De: "alok alok" > <[EMAIL PROTECTED]> > > > > > > Mensagem: 1 > Data: Tue, 10 Jan 2006 19:56:47 -0200 >De: "Rafael Nery" <[EMAIL PROTECTED]> > Assunto: livro para programção de shell scrip0t > > Olá! > Algu´me poderia me indicar um bom livro para estudar > programação em shell > script... > Eu li o Livro do Júlio, mas não achei fácil para > iniciantes... O Livro não é > muito explicativo > []s > Rafael > > > > > > > Mensagem: 2 > Data: Tue, 10 Jan 2006 20:31:41 -0200 >De: Leandro Costa <[EMAIL PROTECTED]> > Assunto: Re: livro para programção de shell > scrip0t > > Compra o Curso Programacao Profissional em Shell > (Apostila) do Aurelio > ... muito bom... > Utilizo ate hj. > http://aurelio.net/shell/apostila/ > > Atenciosamente, > Leandro > > Quando comprei custava 20,00 reais > > > Rafael Nery escreveu: > > >Olá! > >Algu´me poderia me indicar um bom livro para > estudar programação em shell > >script... > >Eu li o Livro do Júlio, mas não achei fácil para > iniciantes... O Livro não é > >muito explicativo > >[]s > >Rafael > > > > > > > >- > >Esta lista não admite a abordagem de outras > liguagens de programação, como perl, C etc. Quem > insistir em nÃ
Re: [shell-script] Exportar Variável??
On Tue, 24 Jan 2006 5:29pm -0200, Tiago Barcellos Peczenyj wrote: > Fabricio, > > Se não me engano em alguns shells (aqui foi apresentado uma versão de > ZSH como exemplo) o redirecionamento < abre um sub shell também... Nao... Nem ZSH e nem nenhum shell abriria um subshell com redir. -- Felipe Kellermann - 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
Re: [shell-script] Calculos com ponto flutuante
On Wed, 8 Feb 2006 2:25pm -0300, Fábio Boeing wrote: > Até coisas um pocuo mais complicadas como raiz negativa... Estão dando > um como se não fossem argumentos válidos... > > Alguém sabe que comando eu posso usar? E qual a sintaxe? Depende do shell. Na especificacao POSIX nao ha nenhuma definicao sobre suporte a ponto flutuante em shell. Alguns shells implementam. Em zsh, por exemplo: orchid% print $((1.5 * 3 - .2)) 4.2998 -- Felipe Kellermann - 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
Re: [shell-script] Uso do ponto
yOn Wed, 8 Feb 2006 4:33pm -0200, Tiago Barcellos Peczenyj wrote: > sinistro... o_O testei num linux e num hp-ux e ele não encontra o arquivo > com varios ... depois, mas o cygwin encontra... Globs simples sao implementados por glob(3). Provavelmente a glob(3) do Cygwin suporta este tipo de padrao. O shell nao interefere em nada. Seria interessante ver o significado deste sufixo-com-pontos. -- Felipe Kellermann - 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
Re: [shell-script] Outras Formas de Fazer Isso
On Fri, 10 Feb 2006 2:42pm -0200, Gentil de Bortoli Júnior wrote: > essa opção só aceitaria %f, %g e %e, sem modificações. > > Perdi por não tentar. :) Se quiseres evitar de usar o seq e usar apenas shell, tu podes fazer de uma forma bem simples assim (funciona apenas em bash3 ou zsh, claro): bash3-patched$ printf "%05d\n" {10..15} 00010 00011 00012 00013 00014 00015 bash3-patched$ Similar da zsh, de onde a funcionalidade anterior da bash3 foi copiada: orchid% printf "%05d\n" {10..15} 00010 00011 00012 00013 00014 00015 orchid% -- Felipe Kellermann - 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
Re: [shell-script] readonly
On Mon, 13 Feb 2006 2:55pm -0300, Fábio Boeing wrote: > readonly Nome > > Mas durante a utilização do terminal, preciso alterar o valor dela... Oi Fabio, Se precisa alterar, nao usa readonly. Os parametros (e arrays, e funcoes, etc) readonly nao podem ser mudados e nem removidos. Uso readonly em quase todos os meus parametros. Os que nao sao readonly sao locais. Nem ksh, nem bash3, nem zsh permitem -- e se alguem permitir, vai estar quebrando todos os scripts que se valem deste comportamento. Nao teria, por acaso, nenhuma outra maneira de contornar a tua troca de valor de Nome? -- Felipe Kellermann - 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
Re: [shell-script] Dúvida mkdir com coringas
On Thu, 16 Feb 2006 10:31pm -0300, Gentil de Bortoli Júnior wrote: > Hm. Creio que você queira isso: > > mkdir i{3,4,5,6}86 Em bash3 e zsh, mkdir i{3..6}86 -- Felipe Kellermann - 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
Re: [shell-script] Bash script para pegar as fotos de um diretório e criar um arquivo html com os links
On Fri, 17 Feb 2006 2:04pm -0200, Fernando Zank wrote: > #!/bin/bash > > rm -f index.html > > for x in `ls -1 | grep -i jpg`; do > echo "$x" >> index.html; > done; Para complementar. Em zsh poderia ser assim printf "%s\n" *.jpg(e:'reply=(${REPLY}{,})':) E em qualquer outro shell (bash, ksh, etc), poderia ser assim, um pouco menos bonito for i in *.jpg; { printf "%s\n" "$i" "$i"; } -- Felipe Kellermann - 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
Re: [shell-script] variavel no contexto
On Tue, 21 Feb 2006 9:57pm -0300, Tiago Barcellos Peczenyj wrote: > Vejamos > > $ x=1 ; x=2 echo $x ; echo $x > 1 > 1 No primeiro comando, x = 1. No segundo comando: As substituicoes simples (glob, parametros, etc) sao feitas. Resultado: "x=2 echo 1" (x = 1, do comando anterior) -- no ambiente shell de chamada ao echo, parametro x = 2. No segundo comando: As substituicoes simples (glob, parametros, etc) sao feitas. Resultado: "echo 1" (x = 2 estava no ambiente shell do echo). Resultado: 1 1 > $ lala() { echo $x ; } > Tudo que estiver dentro do {} vai estar em outro ambiente shell. Posso alterar (estou "criando ele) ele externamente como quiser. Outro comportamento similar, com redirecionamento: $ lala() { cat; } < <(hostname) $ printf "saida\n" | lala saida $ lala orchid > $ x=1 ; x=2 lala ; echo $x > 2 > 1 No primeiro comando, x = 1 (ambiente shell atual). No segundo comando: As substituicoes simples (glob, parametros, etc) sao feitas. Resultado: x=2 lala (x = 2 para o novo ambiente de lala). No ambiente de lala, x = 2, e "echo $x" traduz em "echo 2". No terceiro comando: No ambiente atual, x = 1 -- lala ja acabou. Resultado: echo 1 (x = 1 do ambiente atual). > Parece que a variavel de contexto só pode ser acessada internamente, não > de forma explicita. Estou muito enganado ? Variaveis (parametros) sao acessadas de forma diferente dependendo do ambiente em que estao sendo referenciadas. Para isto existem parametros locais e globais. OBS: Ambiente shell nao tem a ver exatamente com o ambiente tradicional, aquela lista de chave-valor de um processo. $ lala() { x=2; } $ x=1; lala; echo $x 2 $ lala() { local x=2; } $ x=1; lala; echo $x 1 (Poderia ser tanto local quanto declare, typeset, ou qualquer outro tipo de modificador com qualquer opcao -- tu vai estar criando um parametro novo e "escondendo" o mais proximo). $ lala() { local x=3; toto; echo $x; } $ toto() { local x=2; echo $x; } $ x=1; echo $x; lala; echo $x 1 2 3 1 Teu exemplo da chamada de um outro script nao muda. Alem de estar em outro ambiente, tu vai estar em outro shell que nao tem relacao nenhum com quem chamou/criou ele. Uma "variavel de ambiente" (processo) foi explicitamente especificada para o processo (script, shell) seguinte, no entanto, e assim pode ser utilizada. $ x=1; x=2 sh -c 'echo $x'; echo $x 2 1 OBS: Ha outros shells que se confundem na troca de ambientes shell e tu vai ter nao raramente resultados como este: $ lala() { echo $x; } $ x=1; x=2 lala; echo $x 2 2 A zsh, por exemplo, tem alguns modificadores de parametros (variaveis) que podem ser usados para modificar e trabalhar com estes comportamentos, como o "hide", por exemplo. Como referencia de leitura (para o assunto de locais e ambiente shell) eu recomendaria a "LOCAL PARAMETERS" do manual deste shell (zshparam, pagina 7). -- Felipe Kellermann - 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
Re: [shell-script] mover resultado do find para um diretório !
On Tue, 28 Feb 2006 10:00pm -0300, Thiago dos Santos wrote: > find /diretorio -type f exec file '{ }' \ ; > > consigo até redirecionar para um arquivomas o que eu preciso > fazer, é mover estes arquivos que foram identificado pelo find para > outro diretório, somente isto, alguém poderia me ajudar, por favor ! % find /diretorio -type f -exec mv {} /outro/diretorio \; (Algumas pessoas podem recomendar xargs por eventualmente poder ser mais otimizado, mas nem sempre é. O xargs GNU (que é muito estranho) só vai atrasar o processo colocando um pipe sem sentido a mais -- talvez tenha alguma opção para reverter este comportamento. Alguém?). Em um sistema BSD tu tem esta opção, e ela não vai atrasar % find /diretorio -type f -print0 | xargs -I % -0 mv % /outro/diretorio Mesmo com o xargs GNU, em um sistema GNU, eu iria fazer assim % find /diretorio -type f | xargs mv --target-directory=/outro/diretorio Em geral eu prefiro (em zsh) só shell % mv /diretorio/**/*(.) /outro/diretorio -- Felipe Kellermann - 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
Re: [shell-script] mover result ado do find para um diretório !
On Tue, 28 Feb 2006 11:41pm -0300, Thiago dos Santos wrote: > fala pessoal, agradeço ajuda de todos desde já ! > vou colocar a questão original p/ ver se fica mais fácil: > > Create a bash script that searches for Windows executables on the shares. If > an executable is found, the file should be moved to a directory outside of > the share and a mail should be sent to the root of the Samba server. > Depending on your programing skills, you can choose one of the following > methods to determine if a file is a Windows executable: > * Search for file extensions such as .exe or .com (not a secure solution) > * Identify the file type using the command file. Ah, OK... Tu pode repetir todos os `find' que citei adicionando: -iname '*.com' -or -iname '*.exe' Percebeu? Por exemplo: % find /diretorio -type f -iname '*.com' -or -iname '*.exe' \ -exec mv {} /outro/diretorio \; Ou, % find /diretorio -type f -print0 -iname '*.com' -or -iname '*.exe' \ xargs -I % -0 mv % /outro/diretorio Ou, % find /diretorio -type f -iname '*.com' -or -iname '*.exe' | xargs mv \ --target-directory=/outro/diretorio Se tu quiser adicionar (ou só usar isto) a verificação do bit de execução nos finds do exemplo, adiciona a opção -perm, (...) -type f -perm +u=x,g=x,o=x Se quiser/puder optar por zsh, pode fazer o primeiro com: (Move todos arquivos de diretorio/ que acabam com .com ou .exe e que são arquivos normais para /outro/diretorio): % mv /diretorio/**/(*.{com,exe})(.) /outro/diretorio O segundo com: (Move todos arquivos de diretorio/ que são arquivos normais e que têm o bit de execução ligado ou para o dono, grupo ou outros): % mv /diretorio/**/(.x) /outro/diretorio Ou opcionalmente juntar os dois: (Move todos arquivos de diretorio/ que acabam com .com ou .exe e que são arquivos normais com o bit de execução ligado ou para o dono, ou para o grupo, ou para outros, e que o nome acaba com .com ou .exe): % mv /diretorio/**/(*.{com,exe})(.x) /outro/diretorio -- Felipe Kellermann - 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
Re: [shell-script] mover result ado do find para um diretório !
On Wed, 1 Mar 2006 12:28am -0300, Thiago dos Santos wrote: > nossa pessoal, valeu mesmo, agora só por questão didática, como será que > ficaria da segunda forma citada ? > > * Identify the file type using the command file. Seria mais ou menos aquilo que tu já estava iniciando. Fazer esta comparação, no entanto, é um pouco mais dependente do sistema, da tua versão do file, etc. Eu iria fazer assim (há infinitas outras maneiras igualmente feias de se fazer isto): find /diretorio -type f -print | while read arquivo; do if file -bi $arquivo | grep -qF application/x-dosexec; then mv $arquivo /outro/diretorio if done -- Felipe Kellermann - 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
Re: [shell-script] Grep com asterisco não mostra o que eu quero
On Wed, 1 Mar 2006 11:38am -0300, Eriberto wrote: > lua:~# ls > mala mela taco testa teste todos > > lua:~# ls | grep te > testa teste > > lua:~# ls | grep te* > > O último comanado não mostrou nada. Ele não deveria interpretar como o > "e", aparecendo de 0 a n vezes, e mostrar "taco testa teste todos"??? O que está acontecendo é que o shell vai expandir (globbing) esse teu te*. O `ls' faz um teste para ver se ele está enviando os resultados para um terminal ou não. Se não está, ele faz algumas modificações no compotamento dele por opções implícitas (por exemplo, umas das opções implícitas adicionadas é -1). Exemplo: $ ls mala mela taco testa teste todos $ ls | cat -n 1 mala 2 mela 3 taco 4 testa 5 teste 6 todos O teu te* vai expandir para "testa teste": $ echo te* testa teste E, portanto, teu comando final é este, substituindo o glob (te*): ls | grep testa teste Não tem nenhum arquivo com o nome "testa teste", e por isso não mostra nada. A minha única curiosidade é entender o motivo de tu precisar estar usando grep para procurar os arquivos. Em geral é interessante, melhor e mais limpo usar só glob. Quanto mais flexível é o globbing do shell, mais interessante, útil e poderoso é o ambiente. Por exemplo: $ arquivos=(te*) Ou $ for in te*; { ... } OBS: E a interpretação não é de "`e' zero ou mais". Há diferenças entre expressões regulares e globbing. Em um glob o teu "te*" significa apenas o literal "te" seguido de qualquer coisa. -- Felipe Kellermann - 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
Re: [shell-script] Grep com asterisco não mostra o que eu quero
On Wed, 1 Mar 2006 11:39am -0300, Felipe Kellermann wrote: > OBS: E a interpretação não é de "`e' zero ou mais". Há diferenças entre > expressões regulares e globbing. Em um glob o teu "te*" significa apenas o > literal "te" seguido de qualquer coisa. Oops, para finalizar, devo lembrar que a semântica é este porque o * não foi "protegido" e por isto o shell fez o glob (com a semântica descrita acima). Se tu quiser o comportamento que tu esperava, é só fazer assim: $ ls | grep te\* taco testa teste todos Ou assim: $ ls | grep 'te*' taco testa teste todos OBS: Não acho interessante juntar ls com grep. Mas é opinião pessoal :-) -- Felipe Kellermann - 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
Re: [shell-script] Manipular tempo em shell script
On Thu, 2 Mar 2006 1:04pm -, Fabricio Lopes de Souza wrote: > # check - Verifica se o ano eh bissexto e se o dia tem 30/31 dias > [29/28 para fev] > # error - Trata alguns erros > # set_date - Verifica se a sintaxe da data esta correta , e divide . > # add_[year/month/day/hour/minutes/seconds] - Adiciona $1 > [year/month/day/hour/minutes/seconds] > # del_[year/month/day/hour/minutes/seconds] - Remove $1 > [year/month/day/hour/minutes/seconds] > # compara - calcula o intervalo entre o horario de entrada com o horario atual Muito legal Fabricio. Tanto a escrita quanto a interfaces ficaram muito interessantes mesmo -- muito legal. Só não esqueça que se tu estiver em um sistema GNU, todas estas funcionalidades (e outras) podem ser feitas só usando o `date'. Por exemplo: $ date +%Y/%m/%d-%H:%M -d 'now + 2 years - 3 days + 2 hours + 30 minutes' 2008/03/03-21:07 E, portanto, tu pode fazer diferênças, comparações, etc. entre datas transformando (formatação) de data para timestamp e de timestamp novamente para data. Mas muito legal teu script. Referência... -- Felipe Kellermann - 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
[shell-script] Script para apagar arquivos
Ola lista, Meu problema eh o seguinte. Tenho um servidor que fica gerando imagens e elas são uteis apenas uma vez, queria um script que quando a pasta onde elas ficam ficasse em um certo tamanho (por exemplo 15 MB). Ele apagasse os arquivos mais velhos. Procurei no google mas não encontrei. Como sei pouco de shell nao tenho como sugerir nenhuma solucao. Desde jah grato, Felipe Costa - Blab-away for as little as 1¢/min. Make PC-to-Phone Calls using Yahoo! Messenger with Voice. [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 <*> 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
Re: [shell-script] Listar varios tipos de ficheiros
On Fri, 7 Apr 2006 8:29pm -0300, Tiago Barcellos Peczenyj wrote: > Aqui faço um laço e uso o grep para contar as ocorrencias. > $ for i in $(ls | rev | cut -d. -f1 | rev | sort | uniq) > do occ=$( grep -c $i <(ls) ) > echo "a extencao $i tem ${occ} ocorrencias" > done > > a extencao bin tem 5 ocorrencias Lembre-se que o uniq tem a opção -c que pode reduzir significativamente este teu for por não precisar listar tudo e passar para o grep. Parece-me também que na definição dele era necessário fazer a contagem também em subdiretórios. Seria só o caso de trocar teu ls por find. -- Felipe Kellermann - 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
[shell-script] variável zera
Srs, Fiz um script q varre os arquivos de uma pasta, mas a cada iteração a sequência volta ao valor inicial. Alguém pode me dar um help? Segue o script: #!/bin/bash SEQ=1 while true do echo "LOOP PRINC $SEQ" ls -tr | tail -n 4 | while read arq do echo "SEQ = $SEQ <$arq>" (( SEQ++ )) done sleep 2 done Grato, Felipe ===== Felipe Pavanello Sultani - Yahoo! doce lar. Faça do Yahoo! sua homepage. [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 <*> 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
Re: [shell-script] variável zera
Tiago, Vc tem razao, o pipe gera um processo filho, mas o redirecionamento do stdin que vc enviou nao funciona: 4.sh: line 4: syntax error near unexpected token `(' 4.sh: line 4: `done <( ls -tr | tail -n 4 )' Felipe Tiago Barcellos Peczenyj <[EMAIL PROTECTED]> escreveu:Ola O pipe | gera um subshell, então a sua variavel é copiada para o subshell, incrementada e some. Experimente usar while read arq do echo "SEQ = $SEQ <$arq>" (( SEQ++ )) done <( ls -tr | tail -n 4 ) On 4/11/06, Felipe Sultani <[EMAIL PROTECTED]> wrote: > > Srs, > > Fiz um script q varre os arquivos de uma pasta, mas a cada iteração a > sequência volta ao valor inicial. Alguém pode me dar um help? > > Segue o script: > > #!/bin/bash > SEQ=1 > > > while true > do >echo "LOOP PRINC $SEQ" >ls -tr | tail -n 4 | while read arq >do > echo "SEQ = $SEQ <$arq>" > (( SEQ++ )) >done >sleep 2 > done > > Grato, > Felipe > > > = > Felipe Pavanello Sultani > > - > Yahoo! doce lar. Faça do Yahoo! sua homepage. > > [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 > > > > > *Yahoo! Grupos, um serviço oferecido por:* PUBLICIDADE > <http://br.ard.yahoo.com/SIG=12f43nl1g/M=399886.8024024.9151850.2369893/D=brclubs/S=2137111254:HM/Y=BR/EXP=1144803947/A=3489955/R=2/id=noscript/SIG=154jd0qmm/*http://lt.dell.com/lt/lt.aspx?CID=11921&LID=328479&DGC=BA&DGSeg=DHS&DURL=http://www1.la.dell.com/content/products/category.aspx/desktops?c%3dbr%26l%3dpt%26s%3ddhs> > -- > *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]<[EMAIL PROTECTED]> > >- O uso que você faz do Yahoo! Grupos está sujeito aos Termos do >Serviço do Yahoo! <http://br.yahoo.com/info/utos.html>. > > -- 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 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 Termos do Serviço do Yahoo!. = Felipe Pavanello Sultani - Abra sua conta no Yahoo! Mail - 1GB de espaço, alertas de e-mail no celular e anti-spam realmente eficaz. [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 -
Re: [shell-script] variável zera
Entao tiago, fiz como vc disse: #!/bin/bash while read linha do echo "linha = $linha" done < <(ls -tr | tail -n 4) line 5: syntax error near unexpected token `<' line 5: `done < <(ls -tr | tail -n 4)' e continua apresentando erro de sintaxe... Felipe Tiago Barcellos Peczenyj <[EMAIL PROTECTED]> escreveu:Opa, desculpe faltou + um < while read linha do echo "linha = $linha" done < <(ls -tr | tail -n 4) Explicação: a estrutura while ... done < arquivo insere o conteudo do arquivo na entrada padrão (stdin), quando vc faz while read variavel vc lê atraves do read a stdin (que só vê o conteudo do arquivo por causa o redirecionador '<' Porem existe uma segunda estrutura que é assim <(comando) onde o resultado do comando é lido como se fosse um arquivo. Exemplos: Diferenças entre 2 diretorios $ diff <(ls dir1) <(ls dir2) Remover tabs $ tr -d '\t' < arquivo Abraços On 4/12/06, Felipe Sultani <[EMAIL PROTECTED]> wrote: > > Tiago, > > Vc tem razao, o pipe gera um processo filho, mas o redirecionamento do > stdin que vc enviou nao funciona: > > 4.sh: line 4: syntax error near unexpected token `(' > 4.sh: line 4: `done <( ls -tr | tail -n 4 )' > > Felipe > > Tiago Barcellos Peczenyj <[EMAIL PROTECTED]> escreveu:Ola > > > O pipe | gera um subshell, então a sua variavel é copiada para o subshell, > incrementada e some. > > Experimente usar > > while read arq > do echo "SEQ = $SEQ <$arq>" > (( SEQ++ )) > done <( ls -tr | tail -n 4 ) > > On 4/11/06, Felipe Sultani <[EMAIL PROTECTED]> wrote: > > > > Srs, > > > > Fiz um script q varre os arquivos de uma pasta, mas a cada iteração a > > sequência volta ao valor inicial. Alguém pode me dar um help? > > > > Segue o script: > > > > #!/bin/bash > > SEQ=1 > > > > > > while true > > do > >echo "LOOP PRINC $SEQ" > >ls -tr | tail -n 4 | while read arq > >do > > echo "SEQ = $SEQ <$arq>" > > (( SEQ++ )) > >done > >sleep 2 > > done > > > > Grato, > > Felipe > > > > > > = > > Felipe Pavanello Sultani > > > > - > > Yahoo! doce lar. Faça do Yahoo! sua homepage. > > > > [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 > > > > > > > > > > *Yahoo! Grupos, um serviço oferecido por:* PUBLICIDADE > > < > http://br.ard.yahoo.com/SIG=12f43nl1g/M=399886.8024024.9151850.2369893/D=brclubs/S=2137111254:HM/Y=BR/EXP=1144803947/A=3489955/R=2/id=noscript/SIG=154jd0qmm/*http://lt.dell.com/lt/lt.aspx?CID=11921&LID=328479&DGC=BA&DGSeg=DHS&DURL=http://www1.la.dell.com/content/products/category.aspx/desktops?c%3dbr%26l%3dpt%26s%3ddhs > > > > -- > > *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]< > [EMAIL PROTECTED]> > > > > >- O uso que você faz do Yahoo! Grupos está sujeito aos Termos do > >Serviço do Yahoo! <http://br.yahoo.com/info/utos.html>. > > > > > > > -- > > Tiago B Peczenyj > Linux User #405772 > > # cd /pub > # more beer > > > [As partes desta mensagem que não continham texto foram removidas] > > > > -
Re: [shell-script] arrays -- foreach
On Fri, 21 Apr 2006 1:38pm -0300, Ricardo A. Reis wrote: > Eu nao tenho certeza mais acho isso nao e possivel com bash, talvez com > zsh!! o qual mesmo usando nao conheco muito, > Tabela % typeset -A estado % estado=(RS "Rio Grande do Sul" SP "São Paulo") Exemplo % for e in ${(k)estado}; { print $e, $estado[$e]; } RS, Rio Grande do Sul SP, São Paulo Foreach Keys % print -l ${(k)estado} RS SP Reverse Foreach Keys % print -l ${(kO)estado} SP RS Foreach % print -l ${(v)estado} Rio Grande do Sul São Paulo Outros % print $estado[RS] Rio Grande do Sul % print ${estado[(R)São*]} São Paulo % print ${estado[(i)R?]} RS % print [EMAIL PROTECTED] Rio Grande do Sul -- Felipe Kellermann - 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 Termos do Serviço do Yahoo!.
Re: [shell-script] Substituir palavra
talvez um pouco mais seguro com borda: sed 's/\/del/g' script > novo_script -->[a-zA-Z0-9_] Tiago Barcellos Peczenyj <[EMAIL PROTECTED]> escreveu: Uma sugestão sed 's/add/del/g' script > novo_script mas se certifique que vc pode trocar indiscriminadamente todas as palavras add por del ;-) On 4/27/06, Thiago Rodines <[EMAIL PROTECTED]> wrote: > Boa tarde pessoal, preciso saber como faço para substituir a palavra add > para del!! > > Exemplo: > antes: route add ... > depois: route del ... -- Tiago B Peczenyj Linux User #405772 # cd /pub # more beer - 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 Termos do Serviço do Yahoo!. = Felipe Pavanello Sultani - Novidade no Yahoo! Mail: receba alertas de novas mensagens no seu celular. Registre seu aparelho agora! [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 Yahoo! Grupos, um serviço oferecido por: PUBLICIDADE 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 Termos do Serviço do Yahoo!.
Re: RES: [shell-script] Velocidade do xargs
On Wed, 10 May 2006 3:17pm -0300, Julio Cezar Neves - DATAPREVRJ wrote: > Mas uma coisa eu já testei: o find com xargs é *muito* mais rápido do > que com exec. Sim. Seria quase que como comparar a chamada 100 vezes repetida de um programa contra duas ou uma. Tem o overhead do sistema operacional de duplicar o chamador, reescrever e executar. Mas ha diversos casos (a maioria) em que o xargs vai silenciosamente executar um por vez, tornando o procedimento _bem_ mais custodo do que apenas um find com exec. Tenta substituir valores em um xargs. Veja como ele vai quebrar os argumentos. Outra desvantagem de usar xargs tradicional: Nao existe nenhum padrao de implementacao. POSIX tem uma definicao simples e que ninguem segue, tradicionalmente. Tente usar xargs em um GNU/Linux e depois em um sistema BSD (MacOSX, OpenBSD, etc). Para evitar problemas com xargs e ainda assim usar uma funcionalidade similar (mais muito mais melhorada pelo proprio shell, que seria o lugar correto de se fazer isto), o zsh tem o "zargs". zargs -- /var/spool/postfix/deferred/*/* -- postcat > arq OBS: Se nao me engano o postcat pode receber "argumentos" pela stdin, nao? -- Felipe Kellermann - 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 Yahoo! Grupos, um serviço oferecido por: PUBLICIDADE 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 Termos do Serviço do Yahoo!.
Re: [shell-script] minuscula para maiuscula
On Thu, 11 May 2006 1:43pm -, Edilson Souza wrote: > Preciso altera dos os arquivos de um diretorio e subdiretorio, de > maiuscula para minuscula, e que a primeira letra fique maiuscula. e > também remover os espaços em branco entre os nomes dos arquivos. Em zsh, % ls -F ARQUIVO DIR1/ DIR3/ DIR COM ESPACO/ DIR2/ TEMP/ % for d in *(/); { print $d, $d[0]${(L)${d[2,$]:gs/ //}}; } DIR COM ESPACO, Dircomespaco DIR1, Dir1 DIR2, Dir2 DIR3, Dir3 TEMP, Temp -- Felipe Kellermann - 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 Yahoo! Grupos, um serviço oferecido por: PUBLICIDADE 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 Termos do Serviço do Yahoo!.
Re: [shell-script] Re: Vetores
On Thu, 18 May 2006 1:22pm -0300, Mauricio wrote: > vet=(1 2 3) > > echo $vet[2] > 1[2] > > echo ${vet[2]} > 3 Varia de shell para shell. Nao ha ambiguidade nenhuma em se interpretar uma expressao $vet[2] como ${vet[2]}. Bash3 precisa ser arrumado neste sentido. Em ZSH nao precisa dos {}. -- Felipe Kellermann - 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 Yahoo! Grupos, um serviço oferecido por: PUBLICIDADE 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 Termos do Serviço do Yahoo!.
Re: [shell-script] como indexar nome de variavel?
On Fri, 26 May 2006 6:31pm -0300, Tiago Barcellos Peczenyj wrote: > ->for i in 1 2 3 > do eval "teste_$i=$i" > echo $teste_$i > done > > 1 > 2 > 3 Oops. Engano. Parece estar correto mas nao esta. Precisa ser eval echo \$teste_$i. Esta mostrando sempre o valor de $fuu_ e de $i. Juntos formam novamente o 1, 2 e 3. -- Felipe Kellermann - 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 Yahoo! Grupos, um serviço oferecido por: PUBLICIDADE 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 Termos do Serviço do Yahoo!.
Re: [shell-script] string retorno da funcao
On Tue, 30 May 2006 5:24pm -0300, RAUL LEOPOLDO LONGHI wrote: > is_time() { > now=`date|awk '{print $4}'` > $now > } > > até aqui tranquilo. O meu problema é que estou tentando pegar esse > retorno e atribuir a uma variavel, mas nao tah dando certo. > > start_time=is_time (nao da certo) > > start_time=$(is_time) (nao da certo) Em UNIX/shell o único tipo de "retorno" que existe é um valor de 0 a 255. Qualquer outra coisa tu precisa usar outros mecanismos. Um desses mecanismos é tu pegar o resultado (output, não confunda resultado com código de retorno) de uma chamada (seja de um software, seja de uma função, seja de qualquer coisa). No teu $now, troca por: printf "%s" "$now" Assim: is_time() { now=$(date | awk '{ print $4 }') printf "%s" "$now" } OBS: Prefira sempre usar $(), como tu usou na tua tentativa de pegar o retorno, no lugar de ``. Assim a tua segunda tentativa vai funcionar: % start_time=$(is_time) % print $start_time 22:13:03 -- Felipe Kellermann - 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 Yahoo! Grupos, um serviço oferecido por: PUBLICIDADE 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 Termos do Serviço do Yahoo!.
Re: [shell-script] Alterar linha de arquivo
On Tue, 30 May 2006 10:13pm -0300, Alain M. wrote: > Eu tenho um arquivo ifcfg.eth0 assim: > DEVICE=eth0 > BOOTPROTO=static > IPADDR=10.0.0.33 > NETMASK=255.255.255.0 > NETWORK=10.0.0.0 > BROADCAST=10.0.0.255 > > > > como que eu altero a linha BOOTPROTO para > BOOTPROTO=dhcp > 1) sem altera o resto 2) qualquer que seja a posição no arquivo e 3) se > a linha estiver repetida, alterar todas elas. > > Eu acho que o SED resolve, mas não sei como satisafazer as 3 condições. Se for GNU sed tu pode fazer em só um comando. Se não for tu vai precisar fazer cópia/modificar/mover: % sed -i 's/\(BOOTPROTO=\).*/\1dhcp/' teste Se tu tiver Perl (deve ter), pode fazer via "Perl pie": % perl -p -i -e 's/(BOOTPROTO=).*/$1dhcp/' teste -- Felipe Kellermann - 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 Yahoo! Grupos, um serviço oferecido por: PUBLICIDADE 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 Termos do Serviço do Yahoo!.
Re: [shell-script] notação científica - como lidar?
On Thu, 1 Jun 2006 12:15pm -0300, Ricardo Acosta wrote: > mesmo usando o "printf %E" (utilizado para notação científica). > não obtive êxito. Visto que o "seq" não aceita este tipo de notação. > alguém teria alguma sugestão? Ele aceita, sim. Ou tu pode usar zsh, tambem, e ter floats sem fazer coisas feias com seq/awk/bc/etc: % for ((f = 1.0e+0; f <= 5.0e+0; f += 0.5e+0)); { print $f } 1.00 1.50 2.00 2.50 3.00 3.50 4.00 4.50 5.00 -- Felipe Kellermann - 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 Yahoo! Grupos, um serviço oferecido por: PUBLICIDADE 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 Termos do Serviço do Yahoo!.
Re: [shell-script] Dúvida export
On Fri, 23 Jun 2006 5:08pm -0300, Flavio Junior wrote: > hm while true sem sleep ? > > acho que vai levar o CPU a 100% ... > > ACHO ! Leituras/Escritas em FIFOs são bloqueantes. Fiz patches para bash e ksh e zsh para suportar leituras e escritas em FIFOs bloqueantes e exclusivas e acho que já enviei para esta lista. Por este motivo é até perigoso usar este tipo de IPC. Por algum deadlock, ou qualquer outro problema, tu pode ter teus processos (shells) parados para sempre. Não existe, infelizmente, mecanismos SYSV/POSIX IPC um pouco mais sofisticados do que um named pipe nos shells atuais (bash, zsh). Não seria difícil de implementar (a zsh tem o módulo zsh/system para este tipo de implementação de interface adicional) e seria interessante. Troca de mensagens, filas, memória (variáveis?) compartilhadas, etc. -- Felipe Kellermann - 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
Re: [shell-script] Dúvida export
On Sat, 24 Jun 2006 8:50pm -0300, Gilberto Martins wrote: > Olá Felipe. > > Achei interessante o teu texto, mas não entendi se vc quis dizer que : > a) FIFOs têm uma característica chamada de "bloqueante" Uma leitura/escrita, em UNIX, em um FIFO, faz o processo que está executando a operação bloquear. Faça um teste assim: % mkfifo teste % cat teste O cat vai ser bloqueado até que exista alguém para escrever. E iria acontecer o mesmo caso fosse o contrário: % mkfifo teste % print palavra > teste O shell vai ser bloqueado ("travado" por causar uma outra impressão) até que tenha alguém para ler. Obviamente, existe a opção de leitura ou escrita não bloqueante. Fiz este suporte na bash há um tempo. Assim tu vai tentar ler. Se tiver alguma coisa, ótimo. Se não tiver, fica sabendo que não tinha nada e segue. O mesmo para escrita. Se tinha alguém para ler, a escrita é feita. Se não tinha, continua normal. Enviei para a lista há um tempo o patch, eu acho. Se não achar, pode pedir que eu envio mais informações sobre o assunto. > b) FIFOs realmente podem provocar travamentos ? > Podem, como mostrei nos exemplos. Na zsh existe o zsh/select, que torna possível o shell fazer um select(2) (uma chamada de sistema que verifica se existe dado pronto para ser consumido, ou se existe consumidor, etc). Eu acredito que a melhor referência sobre o assunto sejam os livros do próprio Tanenbaum, do Stevens ou do Silberschatz, ambos de sistemas. Os livros deles têm tradução para português. -- Felipe Kellermann - 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
Re: [shell-script] Dúvida export
On Mon, 26 Jun 2006 4:12pm -, Julio C. Neves wrote: > Com esta frase, quero simplesmente dizer que qq coisa é passível de > travamento, seja por maldade, seja por incompetencia. Absolutamente nada > pessoal ao Felipe (grande colaborador da nossa lista), falei em latu-sensu. Provavelmente tu não leu toda a thread antes de fazer teus comentários... -- Felipe Kellermann - 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
Re: [shell-script] numero decimais awk
On Mon, 26 Jun 2006 11:09pm -0300, Tiago Barcellos Peczenyj wrote: > Ola > > Vendo as respostas para os scripts awk no seu ambiente, teste isso: > > tr '.' ',' < temp2.dat | awk 'NR != 1{soma2 += $2 ; print soma2,$2 }' > > Acho que tem haver com localização. afinal por que vc imprime > variaveis do tipo ponto flutuante com virgula ao inves de ponto? Sim. Depende do locale. Ou: % LANG=POSIX awk 'NR != 1 { soma2 += $2 ; print soma2,$2 }' temp.dat -- Felipe Kellermann - 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
Re: [shell-script] Renomear muitos arquivos simultaneamente
On Sat, 1 Jul 2006 4:43pm -0300, Edvandro Santos wrote: > [+] Pasta 1: > [-] arquivo1.txt > [-] arquivo2.txt > [+] Pasta 1: > [-] arquivo1.txt > [-] arquivo2.txt > [-] arquivo3.txt > [-] arquivo4.txt > > A pergunta: Como faço pra renomear todos os arquivos(tanto da pasta 1 quanto > da pasta 2) ao mesmo tempo, para outra extensão? No link da Dicas-L que o Celso Viana enviou tem dicas legais para usar o find com basename, etc. Apenas para efeito de curiosidade de quem tiver interesse, na zsh pode-se usar o zmv. Mover todos de txt para doc nesta mesma árvore que tu mostrou, por exemplo: Pasta 1% noglob zmv -vW **/*.txt **/*.doc mv -- Pasta\ 1/arquivo1.txt Pasta\ 1/arquivo1.doc mv -- Pasta\ 1/arquivo2.txt Pasta\ 1/arquivo2.doc mv -- arquivo1.txt arquivo1.doc mv -- arquivo2.txt arquivo2.doc mv -- arquivo3.txt arquivo3.doc mv -- arquivo4.txt arquivo4.doc -- Felipe Kellermann - 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
Re: [shell-script] Sobre Coreutils do gentoo
On Tue, 4 Jul 2006 10:34am -0300, Thomaz de Oliveira dos Reis wrote: > verifiquei até o coreutils 5.93 (lançado em 2005) e tinha a opção,a dele > 5.94 (lançada esse ano) não tem a opção... > > alguém mais sabe de alguma coisa sobre isso? Se isso foi realmente uma > opção tirada do comando é preciso adaptar muitos scripts por ai Esta opção foi removida porque não está de acordo com os padrões (POSIX, SuS). Para voltar com o suporte a +N, faça: export _POSIX2_VERSION=199209 Depois é só usar o tail. Vai ser feito um suporte "compabitilidade" para os +N para head/tail nas próximas versões. Se tu quiser usar esta opção só no tail/head, pode fazer: _POSIX2_VERSION=199209 tail/head +N ... -- Felipe Kellermann - 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
Re: [shell-script] Sobre Coreutils do gentoo
On Tue, 4 Jul 2006 12:17pm -0300, Julio C. Neves wrote: > alguns Unixes esta opção tb não existe. Se for este o caso, acho uma pena > que algumas distros fujam do padrão em algo tão básico qto o Shell... > Não suportar +N agora é o padrão. Para suportar o +N precisa-se especificar via _POSIX2_VERSION (edição). Por muitos anos este aviso foi sendo feito. Vai ser feita uma breve modificação para suportar, se não tiver nenhuma ambiguidade, os +N. Melhor é sempre usar "-n", mesmo, -- Felipe Kellermann - 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
Re: [shell-script] Array Associativo
On Thu, 6 Jul 2006 12:18pm -0300, Juliano Martinez wrote: > Boa tarde amigos, > > Gostaria de saber se alguem de vocês conhecem um shell com array > associativo. > Estou procurando no google e não achei nada ainda, na verdade achei um patch > para zsh fazer isso, mas queria um shell que tivesse isso por padrão. > > No bash eu declaro e imprimo normalmente array sequencial mas o associativo > não :( Juliano, Não precisa de patch. Sempre foi suportado. Declaração % typeset -A cidade Atribuições % cidade[rs]="Rio Grande do Sul" % cidade[sp]="São Paulo" Alternativamente % cidade+=(rj "Rio de Janeiro" Uso % print $cidade[rs] e $cidade[sp] Rio Grande do Sul e São Paulo Existem diversas operações que podem ser feitas. Já enviei para esta lista exemplos de operações, como, por exemplo, busca por chaves, ordenamento de chaves e valores, buscas inversas, e muitas outras. -- Felipe Kellermann - 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
Re: [shell-script] Re: Array Associativo
On Fri, 7 Jul 2006 12:19pm -, juliano_oc wrote: > Puxa muito obrigado... eu vi no google o esquema de modulos do zsh... > então ja que ele funciona agora vou ter que scriptar em zsh ao inves > de bash :) > > Muito Obrigado pela ajuda. Só para lembrar que as tabelas associativas não precisam de módulos para funcionarem. Há módulos muito bons, de fato, mas esta funcionalidade está embutida (na gramática). Para ler sobre alguns módulos interessantes, eu recomendaria o manual zshmodules(1). Sobre a troca, não vais perder nada :-) Boa utilização, -- Felipe Kellermann - 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
Re: [shell-script] Ajuda com sed
On Wed, 12 Jul 2006 1:34pm -0300, Herbert Alexander Faleiros wrote: > On Wednesday 12 July 2006 12:45, Victor Leonardo wrote: > [cut] > > caracteres da string que são diferentes de números: > > echo "abcDEF012345.,[EMAIL PROTECTED]" | sed 's/[0-9]//g' > > fazer o contrário, ou seja, pegar apenas o que é número > [cut] > > $ echo "abcDEF012345.,[EMAIL PROTECTED]" | tr -d [:alpha:][:punct:] > 012345 Outra alternativa, //, % valor="abcDEF012345.,[EMAIL PROTECTED]" % echo ${valor//[^[:digit:]]/} 012345 Vai funcionar em bash, zsh e ksh. valor="abcDEF012345.,[EMAIL PROTECTED]" valor=${valor//[^[:digit:]]/} -- Felipe Kellermann - 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
Re: [shell-script] renomear extensão de pastas e diretórios recursivamente
On Thu, 13 Jul 2006 2:29am -, dickric2002 wrote: > Olá, pessoal. Em nosso servidor todos arquivos e pastas estão com ema > extensão ".1" (falha nossa ...). Terei que renomear todos os arquivos > recursivamente, incluside os diretórios, tirando essa extensão. Não dá > para fazer na unha. Será que com sed ou find + mv ... Alguma luz ... Só shell dá para fazer com zsh/zmv. Não precisa usar find + mv + etc. % find . . ./teste ./teste/nee.1 ./fuu ./fuu/doo.1 ./fuubar.1 ./blah.1 % noglob zmv -nW **/*.1 **/* mv -- fuu/doo.1 fuu/doo mv -- teste/nee.1 teste/nee mv -- blah.1 blah mv -- fuubar.1 fuubar -- Felipe Kellermann - 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
Re: [shell-script] somar numero
On Wed, 12 Jul 2006 7:18pm -0300, Flavio Junior wrote: > jah que falamos de outras soluçoes, vou por uma tambem: > > $ cat val.txt | tr '\n' "+" | bc > > O que não falta é formas de somar isso.. mas vamo faze uma longa > thread com varias formas :) Legal ;-) Em zsh, tendo este val.txt, dá para fazer tudo em shell % print ${(j:+:)$(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
Re: [shell-script] Algoritmo de ordenação
On Thu, 13 Jul 2006 3:17pm -, voyeg3r wrote: > Andei fazendo testes com algoritmos de ordenação, pois na faculdade > fiz uma prova (em pascal) sobre o assunto. > > Tentei fazer o mesmo em Shell e não consegui > Como diria o Chapolin colorado > Agora quem poderá me salvar... voyeg3r, Poderia procurar no histórico? Tenho quase certeza que já enviei uma implementação de um quicksort ou algum outro em shell para a lista. Se não encontrar eu posso procurar ele por aqui para enviar novamente. -- Felipe Kellermann - 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
Re: [shell-script] Re: Algoritmo de ordenação
On Thu, 13 Jul 2006 6:11pm -, voyeg3r wrote: > Acho que achei a solução, aí vai o script que usei para testes: > > #!/bin/bash > # Criado em:Qua 12/Jul/2006 hs 12:34 > # Last Change: Qua 12 Jul 2006 12:57:59 BRT > # Instituicao: > # Proposito do script: algoritimo de ordenação > # Autor: Sérgio Luiz Araújo Silva (voyeg3r) > Sim. Único problema é ele ser um bubble ;-) Eu tentei procurar minha mensagem no histórico mas não encontrei. Eu tenho certeza que enviei um QuickSort para há lista há alguns anos. No próprio histórico encontrei eu falando do e-mail que havia enviado. Alguém tem um arquivo de todo o histórico da lista em mbox, por exemplo? Lembro que alguém (não lembro quem) fazia uns pacotes com todo o conteúdo. -- Felipe Kellermann - 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
Re: [shell-script] Números aleatórios
On Fri, 14 Jul 2006 4:44pm -0300, Julio C. Neves wrote: > Fala Emiliano, > como eu te disse, a variável $RANDOM produz números aleatórios entre 0 e > 32767. Se quiser entre -10 e 10, terá que fazer algo parecido com o Se valer como uma contribuição... por RANDOM ser fraca, zsh tem rand48. OBS1: Júlio, eu acho que eu e tu tiramos férias na mesma época :-) OBS2: Na assinatura eu faria assim: *su* -c "*$SHELL* -c 'echo *SO*'" :-) [EMAIL PROTECTED] for i ({1..20}) print $((rand48())) 0.79654943476037232 0.32396337556464161 0.7041522171838146 0.084861004992685451 0.12085065701936415 0.026797090950186231 0.13530103195785514 0.40208468183800861 0.20685943492928871 0.60096681872866498 0.76691623064348136 0.63447899190706991 0.20142526187516552 0.50551066682704615 0.19683109864647363 0.65881913762384059 0.2783755195045714 0.67828074053782572 0.25024152731907634 0.36985652279932779 OBS: Aceita seeds, também, diferente de RANDOM que não tem seed nenhum. -- Felipe Kellermann - 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
Re: [shell-script] Re: Problema com expr
On Fri, 14 Jul 2006 9:31pm -, weder_feliciano wrote: > Concordo com vc, era muito basica mesmo, essa ultima forma que você > passou eu ja havia tentado, por isso pedi ajuda a lista, bem resolvi o > problema dando um echo nas variaveis antes do bc calcular, talvez seja > um problema no meu ambiente. Se tu ainda tiver algum problema ou quiser fazer alguma operação mais complexa e tudo mais usando só shell, pode usar zsh: % float var1=22 var2=7 % print $(($var1 / $var2)) 3.1428571428571428 ... % printf "%2.5f\n" $(($var1 / $var2)) 3.14286 -- Felipe Kellermann - 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
Re: [shell-script] Soma de coluna
On Fri, 14 Jul 2006 9:14pm -, weder_feliciano wrote: > Alguem sabe a forma mais fácil de eu somar uma coluna inteira? como: > 951.00 > 266.28 > 266.28 > 266.28 > 152.16 Vou dar só a metade da resposta... ;-) Em um shell comum tu pode juntar a soma com: % paste -sd+ < valores 951.00+266.28+266.28+266.28+152.16 Em zsh tu pode fazer join dos valores: % print ${(j:+:)$(< valores)} 951.00+266.28+266.28+266.28+152.16 Depois é só tu avaliar isto para achar o resultado. Em zsh pode ser automático no shell só avaliando a expressão. Em outro shell tu vai ter que passar para um programa qualquer (como o bc) para obter o resultado. -- Felipe Kellermann - 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
Re: [shell-script] Números aleatórios
On Tue, 18 Jul 2006 12:07am -0300, Prof. Emiliano Chemello wrote: > > number=$(($((RANDOM%21))-10)) > > deve dar enter -10 e +10 > > Como fazer isto? Tentei colocar estes números nos > parâmetors do comamndo que você me enviou e não deu > certo. Deu uma mensagem de erro dizendo: > "division by 0 (error token is ".001") A bash não tem suporte. Só ksh e zsh suportam floats. -- Felipe Kellermann - 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
Re: [shell-script] Números aleatórios
On Tue, 18 Jul 2006 2:22am -0300, Herbert Alexander Faleiros wrote: > On Tuesday 18 July 2006 00:59, Felipe Kellermann wrote: > [cut] > > A bash não tem suporte. Só ksh e zsh suportam floats. > > > Você pode contornar isso com ferramentas como o dc: > > $ for((x=0;x<10;x++)); do echo -e \ > "4\nk\n$RANDOM\n32767\n/\np" | dc; done > > .2459 > .8153 Ou bc, calc, python, awk, perl... ;-) Se não me engano, bashdiff contorna este problema da bash. -- Felipe Kellermann - 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
Re: [shell-script] Password no cvs
On Tue, 18 Jul 2006 11:36pm -0300, Thomaz de Oliveira dos Reis wrote: > Ola! > > Como faço para enviar um passowd para um comando de login do cvs, tentei > de várias maneiras e não consegui :( > > alguém tem uma idéia? Não tem muito a ver com shellscript, provavelmente. Se tu usa pserver, é só fazer "cvs login". Se tua dúvida é sobre como passar uma senha via scripting para um comando de "login", procure no histórico da lista sobre "expect". Se é por SSH, tu pode usar um par de chaves. Recomendo uso por SSH. -- Felipe Kellermann - 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
Re: [shell-script] Password no cvs
On Wed, 19 Jul 2006 7:57am -0300, João Bernardo Aversa wrote: > Não esqueça de antes exportar a variavel $CVSROOT > > export CVSROOT=:pserver:[EMAIL PROTECTED]:/repositório Olá, Pode ser via -d também :-) -- Felipe Kellermann - 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
Re: [shell-script] variaveis
On Wed, 19 Jul 2006 11:23am -0300, +[+ Suicide|Solution +]+ wrote: > [EMAIL PROTECTED]:/tmp$ cat ip_list | while read LINHA; do echo "IP: $LINHA"; > done > IP: 10.0.0.1 > IP: 10.0.0.2 > IP: 10.0.0.3 > IP: 10.0.0.4 > IP: 10.0.0.5 Olá Felipe, Talvez tu já saiba, mas só para lembrar que se quiser guardar o conteúdo para trabalhar com ele depois de diferentes formas sem ficar acessando o ip_list (arquivo), nós podemos carregar isto em um array. Vai funcionar em bash, ksh e zsh. lista_ip=( $(< ip_list) ) Depois é só iterar, como ele pediu no e-mail, com lista_ip... $ for ip in [EMAIL PROTECTED]; do echo Endereço: $ip; done Endereço: 10.0.0.1 Endereço: 10.0.0.2 Endereço: 10.0.0.3 Endereço: 10.0.0.4 Endereço: 10.0.0.5 Em ZSH... % for ip ($lista_ip) print Endereço: $ip Endereço: 10.0.0.5 Endereço: 10.0.0.5 Endereço: 10.0.0.5 Endereço: 10.0.0.5 Endereço: 10.0.0.5 OBS: Lembre-se que no teu exemplo tu pode deixar de usar o cat e passar direto o conteúdo do arquivo para o while read: while read LINHA; do echo "IP: $LINHA"; done < ip_list -- Felipe Kellermann - 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
Re: [shell-script] AJuda pela amor de Deus!
On Thu, 20 Jul 2006 5:34pm -0300, rafael.nery wrote: > Não entendi. > Como vou comparar da variável que tem os users com o /var/mail? Faça: if [ -e /var/mail/$usuario ]; then existe... else não existe... fi -- Felipe Kellermann - 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
Re: [shell-script] AJuda pela amor de Deus!
On Thu, 20 Jul 2006 5:45pm -0300, Tiago Barcellos Peczenyj wrote: > vc tambem pode comparar usando a opção -f > > if [ -f /var/mail/$usuario ] > then # faz algo se existe > else # faz algo se não existe > fi > > não lembrei do test -f antes... Eu achei estranho o teu ls fechando os descritores ;-) Mas um comentário sobre este teste: Neste caso, se a conta do usuário for tipo Maildir em /var/mail, o teste com -f não vai funcionar. Só usar -e. -- Felipe Kellermann - 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
Re: [shell-script] Tamanho do arquivo em uma variável
On Fri, 21 Jul 2006 1:35pm -0300, Natanael Martins Neves wrote: > Uma solução seria > >var=`du -h xrdiac.dat|awk '{print $1}'` Outras, uma em zsh: Criando uma tabela com as informações do arquivo, a opção que prefiro: % stat -H messages /var/log/messages % print $messages[link] 1713508 Assim $messages[link] tem o tamanho do arquivo em bytes. A $messages[block] tem o tamanho em blocos. Outra, só usando o zsh/stat +size, sem criar uma tabela: % var=$(stat +size /var/log/messages) % echo $var 1713508 % print $var 1713508 Outra, usando o stat (coreutils) no Linux, funciona em bash/zsh/ksh/etc: % var=$(stat -c %s /var/log/messages) % echo $var 1713508 -- Felipe Kellermann - 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
Re: [shell-script] Tamanho do arquivo em uma variável
On Fri, 21 Jul 2006 1:58pm -0300, Felipe Kellermann wrote: > % stat -H messages /var/log/messages > % print $messages[link] > 1713508 > > Assim $messages[link] tem o tamanho do arquivo em bytes. A s/link/size/ -- Felipe Kellermann - 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