2012-06-28 11 views

risposta

13

Non sarà necessario l'uscita con l'automazione perché dovrebbe uscire in testa di file comunque. Quindi, su una linea che si potrebbe fare:

echo 'EXEC DBMS_XDB.SETLISTENERLOCALACCESS(FALSE);' | sqlplus/as sysdba 
+0

Grazie. questa sarebbe la migliore risposta in quanto non voglio creare .sh o .sql in più. –

+0

Ho provato questo comando con la query select ma non è successo nulla. È sufficiente accedere e quindi disconnettersi. Cosa dovrei fare? –

+0

Sembra che manchi un ';' o '/' (su una riga propria) per eseguire effettivamente il comando. Solo una supposizione, dovrai fornire maggiori dettagli per una risposta migliore – Sodved

3

si può wirite da seguire in un guscio

#!/bin/bash 
sqlplus/as sysdba <<EOF 
EXEC DBMS_XDB.SETLISTENERLOCALACCESS(FALSE); 
exit 
EOF 

o si può mettere questo commond in una procedura

0

sqlplus /nolog @your_script.sql

+0

Questo non funzionerà, dal momento che/nolog impedisce a SQL * Plus di accedere al database. –

+0

Ovviamente non lo farà, senza mettere il comando 'connect' nello script. – ipip

Problemi correlati