The UNIX and Linux Forums  
Ciao e benvenuto da parte degli Stati Uniti al UNIX e Linux Forum! Grazie per la visita ed unirsi alla nostra Comunità Globale.

Go Back   UNIX e Linux Forum > Inizio Forum > UNIX e avanzata per utenti esperti
.
google unix.com



UNIX e avanzata per utenti esperti Expert-to-Expert. Ulteriori avanzata UNIX, comandi UNIX, Linux, Sistemi Operativi, System Administration, Programmazione, Shell, Shell Script, Solaris, Linux, HP-UX, AIX, OS X, BSD.

Più di UNIX e Linux Forum Argomenti potreste trovare utili
Filo Thread Starter Forum Risposte Ultimo Post
Tahi Test Suite 4.0.2 (Self-Test Test Suite succursale) iBot Software Uscite - RSS News 0 07-10-2008 07:50 AM
Tahi Test Suite 3.0.15 (IPv6 Conformance Test Tool succursale) iBot Software Uscite - RSS News 0 07-10-2008 07:50 AM
Tahi Test Suite 3.0.13 (IPv6 Conformance Test Tool succursale) iBot Software Uscite - RSS News 0 04-06-2008 01:20 PM
e prova. prova nella stessa directory vikashtulsiyan SUN Solaris 14 12-28-2007 02:25 AM
Keithley presenta Linux-Based RF Parametric Test Systems - Test e Measurement.com iBot UNIX e Linux RSS News 0 07-23-2007 11:30 AM

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 Cerca in questo Thread Rate Thread Modalità di visualizzazione
  #1 (permalink)  
Old 08-01-2008
big123456 big123456 is offline
Utente Registrato
  
 

Iscriviti Data: maggio 2005
Interventi: 200
prova, se

Salve,
Ho questo script:
Codice:
Nbr_BD_Link=`
sqlplus -S sysadm/${PSWD}@${DB_Name} << EOF
        set head off feedback off  ;
        select count(*) from dba_db_links ;
        exit ;
EOF `
echo "Nbr_BD_Link is : "
echo ${Nbr_BD_Link}
echo "we do a test"
if [ "${Nbr_BD_Link}" != "0" ] ; then
echo "${T80}\nLa base ${DB_Name} contient ${Nbr_BD_Link} DB Link :"
fi
Il risultato di esecuzione è
Codice:
Nbr_BD_Link is :
0
we do a test
--------------------------------------------------------------------------------
La base MYDB contient
         0 DB Link :
Come potete vedere, il condizionale echo "T80 $ () \ ($ NLA base db_name continente $ ()) Nbr_BD_Link PB Link:" viene eseguito anche se Nbr_Bd_Link è pari a zero.
Adesso vigore Nbr_BD_Link pari a zero:
Codice:
Nbr_BD_Link=0
Nbr_BD_Link=`
sqlplus -S sysadm/${PSWD}@${DB_Name} << EOF
        set head off feedback off  ;
        select count(*) from dba_db_links ;
        exit ;
EOF `
echo "Nbr_BD_Link is : "
echo ${Nbr_BD_Link}
echo "we do a test"
Nbr_BD_Link=0
if [ "${Nbr_BD_Link}" != "0" ] ; then
echo "${T80}\nLa base ${DB_Name} contient ${Nbr_BD_Link} DB Link :"
fi
Il risultato sarebbe
Codice:
Nbr_BD_Link is :
0
we do a test
La condizione è rispettata e la condizionale echo "T80 $ () \ ($ NLA base db_name continente $ ()) Nbr_BD_Link PB Link:" non è eseguita.
Perché? Qualche idea?
Qualsiasi aiuto? grazie.
Possono essere alcuni soyhermosoyq alla fine del Nbr_BD_Link? Come mantenere solo zero?
  #2 (permalink)  
Old 08-01-2008
epoca era is offline Forum Advisor  
Herder di Inutile Gatti (Su sabbatico)
  
 

Iscriviti Data: marzo 2008
Ubicazione: / ci / è / solo / bin / sh
Interventi: 3.652
Come si può vedere dalla produzione e si aspettano dal vostro script, è un'azienda leader a capo e di alcuni spazi. Estrarre la nuova riga appena dopo l'apertura backtick e / o di utilizzare un operatore di confronto che è leggermente meno schizzinosi riguardo spazi (I tendono a raccomandare caso oltre se per le prove).
  #3 (permalink)  
Old 08-01-2008
big123456 big123456 is offline
Utente Registrato
  
 

Iscriviti Data: maggio 2005
Interventi: 200
Grazie.
Come Estrarre la nuova riga appena dopo l'apertura backtick?
iTRIED PER CASE /
: l'uomo caso
Manuale di entrata per caso non trovato o non è installato.
[: uomo selezionare
Manuale per selezionare l'ingresso non trovato o non è installato.
[: uomo CASO
Manuale di entrata per caso non trovato o non è installato.

Ultimo a cura di big123456; al 08/01/2008 10:17 AM..
  #4 (permalink)  
Old 08-01-2008
epoca era is offline Forum Advisor  
Herder di Inutile Gatti (Su sabbatico)
  
 

Iscriviti Data: marzo 2008
Ubicazione: / ci / è / solo / bin / sh
Interventi: 3.652
caso è una shell built-in, come se e mentre; È documentata in sh pagina di manuale. Se avete bash (o, suppongo, di un qualsiasi numero di altre moderne conchiglie), provare a contribuire a caso

Hai una riga vuota prima di "sqlplus", da "prendere il newline" Ho inteso, spostare il comando sqlplus alla stessa linea, come l'apertura backtick.

Codice:
Nbr_BD_Link=`sqlplus -S sysadm/${PSWD}@${DB_Name} << EOF
        set head off feedback off  ;
        select count(*) from dba_db_links ;
        exit ;
EOF `
echo "Nbr_BD_Link is '${Nbr_BD_Link}'"
echo "we do a test"
case ${Nbr_BD_Link} in
  *[1-9]*) echo "${T80}\nLa base ${DB_Name} contient ${Nbr_BD_Link} DB Link :" ;;
esac
Nota l'aggiunta di virgolette nella diagnostica "Nbr_BD_Link è'...'" - ci sono solo quelle per aiutarti a vedere eventuali spazi iniziali o finali.

Ultimo a cura di epoca; al 08/01/2008 10:35 AM.. Motivo: anche suggerire "aiutare caso"
  #5 (permalink)  
Old 08-01-2008
big123456 big123456 is offline
Utente Registrato
  
 

Iscriviti Data: maggio 2005
Interventi: 200
Grazie.
Closed Thread

Segnalibri

Thread Tools Cerca in questo Thread
Cerca in questo Thread:

Ricerca Avanzata
Modalità di visualizzazione Vota questo thread
Vota questo thread:

Distacco regolamento
Tu non può post nuovo thread
Tu non può inviare una risposta
Tu non può postare allegati
Tu non può modificare i tuoi post

BB codice è Su
Smilies sono Su
[IMG] codice Su
Codice HTML è Chiuso
Trackbacks sono Su
Pingbacks sono Su
Refbacks sono Su




Tutti gli orari sono GMT -4. La data di oggi è 04:15 PM.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Traduzioni Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
UNIX e Linux Forum Content Copyright © 1993-2009. Tutti i diritti Reserved.Ad di gestione da RedTyger

Contenuti pertinenti URL da vBSEO 3.2.0