abonnementen ibood.com bol.com Coolblue
  dinsdag 15 januari 2019 @ 16:29:47 #1
418311 Claude_Viole
Loopt te kloten...
pi_184417913
registreer om deze reclame te verbergen
Ik ben bezig om een bash-scriptje te bouwen om een mysql database te dumpen. En dit kwam ik tegen op het internet:

1
2
3
4
5
6
7
8
9
10
11
mysqldump -h ${MYSQL_HOST} \
   -P ${MYSQL_PORT} \
   -u ${MYSQL_USER} \
   -p${MYSQL_PASSWORD} \
   ${DATABASE_NAME} | gzip > ${DB_BACKUP_PATH}/${TODAY}/${DATABASE_NAME}-${TODAY}.sql.gz
 
if [ $? -eq 0 ]; then
  echo "Database successfully dumped"
else
  echo "Error occured during backup"
fi

Hoe werkt dit stukje bij de 'if'?
Wat doet die $? en die 'eq 0' vergelijkt dat met 0 (een true dus?)

Kan iemand dit stukje code uitleggen?
pi_184417993
Als data niet gelijk is aan nul error

[ Bericht 7% gewijzigd door Tailless op 15-01-2019 17:49:30 ]
  dinsdag 15 januari 2019 @ 16:45:54 #3
2671 Aaargh!
Gebruik op eigen risico.
pi_184418185
$? is de exit status van het laatste process. Conventie op Unix is dat een exit status van 0 = alles ging goed, en een exit status anders dan 0 is een error, waarbij de daadwerkelijke waarde de error aangeeft. Wat de betekenis is van de verschillende error waardes verschilt per applicatie.

De code checkt dus of het mysql commando succesvol uitgevoerd is.
It is impossible to live a pleasant life without living wisely and well and justly.
And it is impossible to live wisely and well and justly without living a pleasant life.
  dinsdag 15 januari 2019 @ 19:20:44 #4
418311 Claude_Viole
Loopt te kloten...
pi_184420891
registreer om deze reclame te verbergen
quote:
0s.gif Op dinsdag 15 januari 2019 16:45 schreef Aaargh! het volgende:
$? is de exit status van het laatste process. Conventie op Unix is dat een exit status van 0 = alles ging goed, en een exit status anders dan 0 is een error, waarbij de daadwerkelijke waarde de error aangeeft. Wat de betekenis is van de verschillende error waardes verschilt per applicatie.

De code checkt dus of het mysql commando succesvol uitgevoerd is.
Ahh, op die manier. :)
Maar wat kan ik eronder verstaan als het niet succesvol is uitgevoerd? Fout in de database-files, verkeerde credentials en alles wat een foutmelding dus geeft?
  dinsdag 15 januari 2019 @ 21:39:18 #5
2671 Aaargh!
Gebruik op eigen risico.
pi_184424080
quote:
0s.gif Op dinsdag 15 januari 2019 19:20 schreef Claude_Viole het volgende:

[..]

Ahh, op die manier. :)
Maar wat kan ik eronder verstaan als het niet succesvol is uitgevoerd? Fout in de database-files, verkeerde credentials en alles wat een foutmelding dus geeft?
Precies. In de manpage kan je vaak de verschillende foutcodes vinden. Stel dat foute username/pass exit status 1 is, dan kan je daar in je script iok op testen en wen specifieke foutmelding geven.
It is impossible to live a pleasant life without living wisely and well and justly.
And it is impossible to live wisely and well and justly without living a pleasant life.
  dinsdag 15 januari 2019 @ 21:45:30 #6
418311 Claude_Viole
Loopt te kloten...
pi_184424218
quote:
0s.gif Op dinsdag 15 januari 2019 21:39 schreef Aaargh! het volgende:

[..]

Precies. In de manpage kan je vaak de verschillende foutcodes vinden. Stel dat foute username/pass exit status 1 is, dan kan je daar in je script iok op testen en wen specifieke foutmelding geven.
Joe, zal er eens op letten :)
Thanks! Ik heb weer wat meer duidelijkheid! :)
abonnementen ibood.com bol.com Coolblue
Forum Opties
Forumhop:
Hop naar:
(afkorting, bv 'KLB')