J'ai ajouté ceci à mon ~/.profile, donc je vois immédiatement la version AIX à la connexion :
function aixversion {
OSLEVEL=$(oslevel -s)
AIXVERSION=$(echo "scale=1; $(echo $OSLEVEL | cut -d'-' -f1)/1000" | bc)
AIXTL=$(echo $OSLEVEL | cut -d'-' -f2 | bc)
AIXSP=$(echo $OSLEVEL | cut -d'-' -f3 | bc)
echo "AIX ${AIXVERSION} - Niveau de technologie ${AIXTL} - Pack de services ${AIXSP}"
}
aixversion
Exemple de sortie :
AIX 7.1 - Niveau de technologie 3 - Pack de services 1
nb : Cette fonction est compatible à la fois avec KSH et BASH, vous pouvez donc la mettre dans ~/.bashrc si vous êtes fan de BASH.
nb2 : Les 4 derniers chiffres de oslevel sont l'année et la semaine où le SP a été publié. Je n'ai pas particulièrement besoin de le voir, donc je l'ai laissé de côté. J'étais suffisamment satisfait de la version / TL / SP.
MODIFIER 2018-02-22 : Je viens de trouver une implémentation équivalente mais plus courte, qui ne dépend plus de bc
et utilise awk
au lieu de cut
& bc
.
En une ligne :
oslevel -s | awk -F- '{printf "AIX %.1f - Niveau de technologie %d - Pack de services %d\n",$1/1000,$2,$3}'
Sortie :
AIX 5.3 - Niveau de technologie 9 - Pack de services 2
En tant que fonction shell :
aixversion() {
oslevel -s | awk -F- '{printf "AIX %.1f - Niveau de technologie %d - Pack de services %d\n",$1/1000,$2,$3}'
}
aixversion
Sortie :
AIX 5.3 - Niveau de technologie 9 - Pack de services 2