The UNIX and Linux Forums  

Go Back   O UNIX e Linux Forum > Top Fóruns > UNIX para Dummies Perguntas & Respostas
.
google unix.com



UNIX para Dummies Perguntas & Respostas Se não tiver certeza de onde se pode postar uma pergunta Unix ou Linux, postá-lo aqui. Todos os UNIX e Linux novatos bem vindos!

Mais UNIX e Linux Fórum Tópicos Você pode achar Helpfull
Fio Thread Starter Fórum Respostas Última postagem
EOF verificar a seguir ramkrix Alto Nível de programação 10 03-11-2008 01:43
verificação uid filthymonk Programação Shell Script e 7 07-19-2007 11:40
Verificado cp progresso MarGur UNIX para Dummies Perguntas & Respostas 0 05-15-2007 05:13
Verificado por PXE maestro @ Altiris Sun Solaris 5 05-25-2004 01:06

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
Linkback Thread Tools Pesquisar este Thread Rate Thread Display Modes
  #1 (permalink)  
Old 01-07-2008
philplasma's Avatar
philplasma philplasma is offline
Usuário
  
 

Join Date: May 2007
Local: Quebec
Lugares: 18
Question verificação de valor diferente de zero

Tenho um processo que cuspir um arquivo chamado sqlplus.out, aqui é o que o resultado é algo parecido com:
Citação:
$ Cat sqlplus.out

MAX_ID-LAST_ID
--------------
0
Atualmente o valor que você vê é zero, o que eu preciso fazer é executar uma acção se esse valor é diferente de zero, então como faço para verificar se esse valor em uma declaração? Se isso ajuda, neste momento em desenvolvimento, a linha com o valor será sempre na linha 4.

Obrigado pela ajuda!
  #2 (permalink)  
Old 01-07-2008
joeyg's Avatar
joeyg joeyg is offline Forum Staff  
Modérateur
  
 

Join Data: dezembro 2007
Localização: Home, de 17 de tempo de campeão mundial de Boston Celtics
Posts: 1.311
se então para não-zero

Você pode fazê-lo mais simples, mas estou supondo que você pode ter várias coisas para fazer quando um não-zero é encontrado.
Este é um olhar para a última linha do arquivo, sabendo que o valor será nessa linha.


x \u003d $ (tail -1 sqlplus.out)

echo $ x
if [$ x-ne 0]
então
echo "Você encontrou um valor diferente de zero"
fi
  #3 (permalink)  
Old 01-07-2008
Smiling Dragon's Avatar
Sorridente Dragão Smiling Dragon is offline Forum Advisor  
Desorganizada Usuário
  
 

Join Date: Nov 2007
Localização: Nova Zelândia
Lugares: 922
Citação:
Originally Posted by joeyg View Post
Você pode fazê-lo mais simples, mas estou supondo que você pode ter várias coisas para fazer quando um não-zero é encontrado.
Este é um olhar para a última linha do arquivo, sabendo que o valor será nessa linha.


x \u003d $ (tail -1 sqlplus.out)

echo $ x
if [$ x-ne 0]
então
echo "Você encontrou um valor diferente de zero"
fi
Não será executada em mira, para uma meta-sintaxe seguro, uso de volta carrapatos:

Código:
if [ `tail -1 sqlplus.out` -ne 0 ] ; then echo "You have found a non-zero value" ; fi

  #4 (permalink)  
Old 01-08-2008
philplasma's Avatar
philplasma philplasma is offline
Usuário
  
 

Join Date: May 2007
Local: Quebec
Lugares: 18
Thumbs down

sem a volta carrapatos que não trabalha, assim agradecimentos vão para o Dragão Sorrindo para ajudar, e graças joeyg para a tentativa. No entanto, ele ainda não funcionar, eu recebo o seguinte como um resultado:

Código:
" near 0wn operator in arithmetic expression "0

Não há aspas sqlplus.out presentes no arquivo, mas eu decidi-me vi o arquivo e descobriu que existe um ^ M personagem, no final de cada linha. Eu deveria deixar você saber que este é um emulador unix em um servidor Windows. Outro aspecto a mencionar é que o resultado no arquivo sqlplus.out não começa no primeiro caractere, sqlplus direito justifica o valor com o campo cabeçalho - por qualquer motivo, a interface unix.com fórum colocá-lo para a esquerda. Obrigado novamente para a assistência!
  #5 (permalink)  
Old 01-08-2008
jadionne jadionne is offline
Usuário
  
 

Join Date: Aug 2007
Lugares: 39
apenas um lado PO nota que estão a utilizar para obter os dados fora de?
Eu sei se você usar determinados operaters em DB2 que você pode cortar a todas as coisas desnecessárias coluna IE


Código:
db2 -x "select * from your.table"

Se você pode começar seu PO para cortar todas as porcaria então tudo que você terá que worrie quanto é comparar os valores e você pode deitar fora o "rabo" comando.

Apenas um pensamento.

Jim
  #6 (permalink)  
Old 01-08-2008
Smiling Dragon's Avatar
Sorridente Dragão Smiling Dragon is offline Forum Advisor  
Desorganizada Usuário
  
 

Join Date: Nov 2007
Localização: Nova Zelândia
Lugares: 922
Citação:
Originally Posted by philplasma View Post
sem a volta carrapatos que não trabalha, assim agradecimentos vão para o Dragão Sorrindo para ajudar, e graças joeyg para a tentativa. No entanto, ele ainda não funcionar, eu recebo o seguinte como um resultado:

Código:
" near 0wn operator in arithmetic expression "0

Não há aspas sqlplus.out presentes no arquivo, mas eu decidi-me vi o arquivo e descobriu que existe um ^ M personagem, no final de cada linha. Eu deveria deixar você saber que este é um emulador unix em um servidor Windows. Outro aspecto a mencionar é que o resultado no arquivo sqlplus.out não começa no primeiro caractere, sqlplus direito justifica o valor com o campo cabeçalho - por qualquer motivo, a interface unix.com fórum colocá-lo para a esquerda. Obrigado novamente para a assistência!
Ah, nesse caso, podemos fazer a pesquisa para 0 na última linha um pouco mais robusta, os seguintes irão acionar se você receber um não-zero sair código, mas não irá ignorar qualquer dígito caracteres na linha. Você pode adicionar um segundo grep para um 0 depois de confirmar que é dado um código em todas as saídas, mas tenho deixado isso no exemplo a seguir:

Código:
if `tail -1 sqlplus.out | egrep '[1-9]'` ; then ...

  #7 (permalink)  
Old 01-08-2008
philplasma's Avatar
philplasma philplasma is offline
Usuário
  
 

Join Date: May 2007
Local: Quebec
Lugares: 18
Thumbs up

Obrigado!

Enquanto eu estou certo que sua solução funciona perfeitamente, eu era capaz de solucionar o problema alterando minha SQL que produz a diferença entre o passado eo máximo id id e saída "true" se há uma diferença. Agora eu só preciso grep na verdade a partir do arquivo sqlplus.out e que satisfaça a condição.

Como sempre unix.com entrega, no meu caso não é uma solução final, mas sim dicas úteis para chegar lá.
Closed Thread

Marcadores

Thread Tools Pesquisar este Thread
Pesquisar este Thread:

Pesquisa Avançada
Display Modes Esta taxa Thread
Esta taxa Thread:

Destacamento Regimento
Você não pode postar novas threads
Você não pode postar respostas
Você não pode postar anexos
Você não pode editar suas postagens

BB code é Ligado
Smilies são Ligado
[IMG] código é Ligado
Código HTML é Desligado
Trackbacks são Ligado
Pingbacks são Ligado
Refbacks são Ligado




Todos os horários são GMT -4. A hora é agora 01:44.


Powered by: vBulletinCopyright © 2000 - 2006, Jelsoft Enterprises Limited. Língua Traduções Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
O UNIX e Linux Fóruns Content Copyright © 1993-2009. Todos os Direitos Reserved.Ad Gestão por RedTyger

Content Relevant URLs por vBSEO 3.2.0