Fwd: teste de string no shell
Olá, Estou a fazer um pequeno script que imprima todos os nomes dos ficheiros e respectiva directoria que tenham a extensão .html Mas não funciona, o objectivo final é alterar a extensão para shtml for directoria in $( ls /home/bino/silvinosilva.no-ip.org/* ) do if [ $directoria == *.html ] then echo $directoria fi done Obrigado.
Re: Fwd: teste de string no shell
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Em 19-02-2007 19:43, Silvino Silva escreveu: Estou a fazer um pequeno script que imprima todos os nomes dos ficheiros e respectiva directoria que tenham a extensão .html Mas não funciona, o objectivo final é alterar a extensão para shtml O objetivo é apenas renomear a extensão dos arquivos html para shtml? Isso resolve: http://www.vivaolinux.com.br/scripts/verFonte.php?codigo=689arquivo=troca_extensao.sh - -- Renato S. Yamane Fingerprint: 68AE A381 938A F4B9 8A23 D11A E351 5030 D420 515A PGP Server: http://pgp.mit.edu/ -- KeyID: 0xD420515A http://www.renatoyamane.com -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.5 (GNU/Linux) Comment: Using GnuPG with SUSE - http://enigmail.mozdev.org iD8DBQFF2iZa41FQMNQgUVoRAtJzAJ9Sp4aZUEweIz5QK90NHRYg9rz95QCcCdak K3Po0fDN9fqJS1UciDPdpck= =hTlM -END PGP SIGNATURE- -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]
Re: Fwd: teste de string no shell
Quoting Silvino Silva [EMAIL PROTECTED]: Olá, Estou a fazer um pequeno script que imprima todos os nomes dos ficheiros e respectiva directoria que tenham a extensão .html Mas não funciona, o objectivo final é alterar a extensão para shtml for directoria in $( ls /home/bino/silvinosilva.no-ip.org/* ) do if [ $directoria == *.html ] then echo $directoria fi done Obrigado. Olá, Como é um caso bem específico, pode-se fazer de forma bem simples e segura quanto a espaços nos nomes dos arquivos, em *uma* linha, assim: $ ls -w1 /home/bino/silvinosilva.no-ip.org/*.html | while read ARQ; do mv -v $ARQ ${ARQ%.html}.shtml; done -- Atenciosamente, Junior Polegato Um peregrino de problemas; Um pergaminho de soluções! Página Profissional: http://www.juniorpolegato.com.br
teste de string no shell
Caros, estou montando um sistema de dialog para incluir e excluir entradas nas listas do squid, previso fazer um teste pra verificar se o que esta sendo adicionado é um domínio, estou usando a seguinte estrutura: add_dom=$(dialog --stdout --inputbox 'Digite a String a ser bloqueada :' 0 0) [ $? -ne 0 ] break if [ $add_dom = .$add_dom ]; then echo Domínio invalido dialog\ --title 'Domínio Inválido !!' \ --msgbox Domínio: $add_dom \ 8 40 else echo Domínio valido dialog\ --title 'Domínio cadastrado com sucesso' \ --msgbox Domínio: $add_dom \ 8 40 echo $add_dom /home/leandro/teste.txt fi O problema é que o texte não está dando certo , sendo ou nao domínio ele esta adicionando a lista. Alguém pode me ajudar. Att. -- Leandro Moreira Linux Networking Telefone: +55 (32) 9197-7909 E-mail/MSN: [EMAIL PROTECTED] www.leandromoreira.eti.br -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]
Re: teste de string no shell
On 2/18/07, Leandro Moreira [EMAIL PROTECTED] wrote: if [ $add_dom = .$add_dom ]; then Erro nos teus operadores: = atribui, == compara igualdade entre strings. Para o comando test ( o '[ ]' ), há também o operador -eq. A condição sempre é verdadeira ('vai para o else') e por isso ele grava. -- Maxwillian Miorim [EMAIL PROTECTED] Moo... Are you happy now?
Re: teste de string no shell
On 2/19/07, Maxwillian Miorim [EMAIL PROTECTED] wrote: A condição sempre é verdadeira ('vai para o else') e por isso ele grava. Corrigindo: A condição é *falsa* pois ao executar variavel=valor o retorno do exit_status é 0, que é o valor para false. Está execuntado algo como: if [ 0 ]; then echo verdadeiro else echo falso fi -- Maxwillian Miorim [EMAIL PROTECTED] Moo... Are you happy now?
Re: teste de string no shell
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 02/19/2007 03:16 AM, Maxwillian Miorim wrote: On 2/18/07, Leandro Moreira [EMAIL PROTECTED] wrote: if [ $add_dom = .$add_dom ]; then Erro nos teus operadores: = atribui, == compara igualdade entre strings. Para o comando test ( o '[ ]' ), há também o operador -eq. A condição sempre é verdadeira ('vai para o else') e por isso ele grava. '==' é específico do bash É possível comparar com um = só. Do 'man test': STRING1 = STRING2 the strings are equal INTEGER1 -eq INTEGER2 INTEGER1 is equal to INTEGER2 - -- Felipe Augusto van de Wiel (faw) Debian. Freedom to code. Code to freedom! -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.6 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iD8DBQFF2TtjCjAO0JDlykYRAoHDAJ4n+2a95dJLTlRaVwv4SDPj3O0D2gCcCC8N BT+6Uihe7tC/vXh0iMFD8rQ= =87Rp -END PGP SIGNATURE- -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]