#!perl use strict; open TMP,'>','~tmp.sql' or die "$!"; print TMP << 'END_OF_SQL'; SET HEADING OFF; SELECT systimestamp || ' IP=' || sys_context('USERENV','IP_ADDRESS') FROM dual; EXIT END_OF_SQL close TMP; my $msg = `sqlplus -L -S USER/PASSWORD\@hostname \@~tmp.sql`; print $msg; unlink '~tmp.sql';