Bash: Err_msg = $?
av
2010-03-07 klockan 22:23 (207 Visningar)
Bash är härligt att scripta och göra mer eller mindre onödiga program.
Om man siktar högt och vill lämna någon form av felmeddelande kan man göra det med hjälp av variabeln $?.
Ett litet exempel.
Om jag skriver i terminalen:
så kommer försöker jag visa innehållet i katalogen /home/kalle. Dessvärre har jag inte en mapp som heter kalle. Därför får jag följande svar:Kod:ls -l /home/kalle
Det kan vara användbart vid programmering att kunna visa koder eller liknande. Koden för detta kan jag få fram och jag nu skriver in $?ls: cannot access /home/kalle: No such file or directory
Jag att får följande:
Felkoden för att en mapp inte existerar är alltså kod 2.tomas@tomas-laptop:~$ ls -l /home/kalle
ls: cannot access /home/kalle: No such file or directory
tomas@tomas-laptop:~$ $?
2: command not found
Vad är då koden för en mapp som existerar?
Koden för om en mapp existerar är alltså 0.tomas@tomas-laptop:~$ ls -l bin/
total 20
-rwxr-xr-x 1 root root 13148 2010-03-05 15:47 install-check
-rwxr-xr-x 1 root root 750 2010-03-05 15:47 jhbuild
tomas@tomas-laptop:~$ $?
0: command not found
Detta gäller alla kommandon inte bara ls.
Prova att köra ett kommando följt av $? för att se vad koden för lyckat eller misslyckat är.
Med den här infon kan man sen göra lite mer utförliga program som matar ut felkoder, vilket kanske inte säger användaren så mycket men om man utvecklar program så kan det bli lättare vid felsökning.
Kommentarer
Trackbacks
Totalt antal trackbacks 0
Trackback-URL:








E-posta blogginlägg
