Bash sqlplus oder Bash Fehler?
Hallo,
da ich sehr eingeschränkt in Bash bin, brauche ich hier etwas Hilfe.
Was stimmt mit dem EOF nicht?
Danke für jeden Tipp!
da ich sehr eingeschränkt in Bash bin, brauche ich hier etwas Hilfe.
Was stimmt mit dem EOF nicht?
sqlcheck() {
sqlplus –s /nolog << EOF ######Das ist Zeile 58 und angeblich der Fehler
whenever sqlerror exit 3
connect $USER/$PASSWRD
insert into table sampletable values \(‘abc’,123\);
delete from table sampletable;
commit;
exit 0;
EOF
return $?
}
#Check if sqlcheck is successful or retry $SQLRETRY amount of times. exit with error 3 if not successful
while [ i -lt $SQLRETRY ]
do
i=$[$i+1]
sqlcheck()
sleep 60
done
exit 3
EOF #Zeile 84
#Zeile 85 gibt es nicht
"next.sh" 84 lines, 2671 characters written
root@pc$ sudo /bin/bash ./next.sh
./next.sh: line 84: warning: here-document at line 58 delimited by end-of-file (wanted `EOF')
./next.sh: line 85: syntax error: unexpected end of file
Danke für jeden Tipp!
Please also mark the comments that contributed to the solution of the article
Content-Key: 333031
Url: https://administrator.de/contentid/333031
Printed on: April 27, 2024 at 02:04 o'clock
7 Comments
Latest comment
Was stimmt mit dem EOF nicht?
Es steht nicht am Zeilenanfang. Es muss ganz am Anfang der Zeile stehen und es darf auch kein Blank dahinter folgen.Bei dir sind da ja jede Menge Spaces/Tabs davor.
Gruß
Wieso hast du in der letzten Zeile ein EOF stehen (Zeile 34) ???
Und bei der Variante wird alles zwischen <<EOF ....EOF expandiert, das sollte dir bewusst sein! Willst du das nicht musst du den Delimiter in "Anführungszeichen" setzen.
Und bei der Variante wird alles zwischen <<EOF ....EOF expandiert, das sollte dir bewusst sein! Willst du das nicht musst du den Delimiter in "Anführungszeichen" setzen.
https://ss64.com/bash/syntax-here.html
To disable parameter substitution put quotes around the limit string: <<"End-of-message"
Dann wird dein SQLplus command das so nicht fressen, speichere es vorher in einer Variablen und übergebe es ihm. Beim sqlplus command kann ich dir leider nicht weiterhelfen kenne ich nicht.
ZEILE 10 echo "bin hier"
das ist ja auch Quatsch das dort hinzuschreiben...