Shell skript är ett kraftfullt sätt att manipulera data och kommandon i operativsystemet Unix . Null variabler är svåra att testa , om du inte vet det rätta sättet att göra detta . På andra språk , variabler som innehåller saker som " " normalt klassas som null är inte i fallet med Unix shell eftersom de tolkas olika . Att ha null-värden i variabler är ofta en bra indikator på problem som uppstår i ett skript när värden inte tilldelas automatiskt som förväntat . När detta inträffar kan vidtas och problem avhjälps eller skript kan ta en helt annan väg för att lösa problemet . Instruktioner
1
Kontrollera att variabeln att testet inte är satt till någonting . Ett enkelt sätt att göra detta är att testa en variabel som inte har tilldelats ett värde före testet , genom att inte initiera variabeln som var = " " . I det här exemplet , " " skulle klassas som en sträng ( faktiskt inte noll längd ) och skulle kunna tolkas som ett värde i shell script .
2
Testa variabel för noll längd med standard Unix shell syntax som ( i Bourne-skalet versionen ) är :
om [ - z " $ var " ]
sedan
# andra kommandon ...
fi
Detta innebär att om den " $ var " variabel inte har en längd , är det ett null- värde . Åtgärd kan sedan tas baserat på testet i " då " uttalande som följer . En variabel för ett null- värde
3
test , och om den inte innehåller ett värde , tilldela en i ett enda kommando . Detta kan uppnås genom att använda ett speciellt skal kommando enligt följande :
varisnullornot = $ {var : - NULL }
I detta fall " varisnullornot " variabeln tilldelas värdet som finns i variabeln " var " om den har ett värde . Om det inte har ett värde då variabeln " varisnullornot " kommer att tilldelas ordet " NULL ", som sedan kan testas enligt följande :
om [ " $ varisnullornot " = " NULL " ]
sedan
echo " var är en null variabel "
annars
echo " \\ " varisnullornot \\ " " tilldelas det värde som finns i \\ " var \\ " "
fi