Hallo!
Mein Problemkind ist eine kleine Zeile Code, welche einwandfrei auf Consolenebene funktioniert, nicht aber wenn sie in einem Perl Skript steht:
Ich habe Perl mitgeteilt, dass ORACLE_HOME eine ENV Variable ist. Sollte also niht das Problem sein. Ich habe diese Zeile schon mit ` ` ausgefuehrt und mit system();
Jedes mal wird zwar der Benutzer gewechselt, aber das echo $ORACLE_HOME nicht ausgefuehrt.
Woran kann das liegen? Meine Vermutung ist, dass folgende Zeile
nicht fuer su - ora<sid> gilt, kann das sein? Denn als ich die gleichen Zeilen mit $HOME ausprobiert habe, hat er jedenmal das /root home Verzeichnis ausgegeben. Andere Kommandos klappen naemlich einwandfrei als ora<sid>.
Kann wer helfen:
Danke und Gruss,
Sylan
Mein Problemkind ist eine kleine Zeile Code, welche einwandfrei auf Consolenebene funktioniert, nicht aber wenn sie in einem Perl Skript steht:
Code:
su - ora<sid> -c echo \$ORACLE_HOME | tail -n 1
Ich habe Perl mitgeteilt, dass ORACLE_HOME eine ENV Variable ist. Sollte also niht das Problem sein. Ich habe diese Zeile schon mit ` ` ausgefuehrt und mit system();
Jedes mal wird zwar der Benutzer gewechselt, aber das echo $ORACLE_HOME nicht ausgefuehrt.
Woran kann das liegen? Meine Vermutung ist, dass folgende Zeile
Code:
my $ORACLE_HOME=$ENV{"ORACLE_HOME"};
Kann wer helfen:
Danke und Gruss,
Sylan