I think definitely you'll see some differences in performance. Solaris' sh is the bourne shell and a lot of linux/bsd distro's just like sh to bash or another shell.

The one thing I saw that jumped out at me was:

if ["$daOslgCap" -gt "90%"]

there may be 2 issues with this. Try padding spaces in between the [] and, possibly, check and see if there's an issue with the sense of your "if check", since "90%" is an alpha value and -gt is a unary comparison operator.

to add the spaces:

if [ "$daOslgCap" -gt "90%" ]

for the other part, you should clip the % from your value so you'll be checking if

$daOslgCap -gt 90

Hope that helps you get closer to an answer, if it doesn't answer the whole thing. If you could post the output of :