A few thoughts:
surfnschultz:
now no error BUT no output to screen
la="ps -ef | grep $portnum"
echo la
You have echoed just "la" to the screen, not the contents of the la variable. Try echo $la instead.
squashman:
The Back Ticks would have worked as well. Anytime you want to echo the output of a command or assign it to a variable, you need to enclose the command in `Back Ticks`. Otherwise your echo command or your variable will just equal the characters you typed.
Pretty much right. You can also simply execute the command to display the output to the screen; as you point out, back ticks are especially useful when you want to capture the result of a command, but you can display the result without using back ticks.
surfnschultz:
Not sure what you are doing here, but suspect a typo. You can certainly execute the ps -ef command in your script, and without any additional magic, the output will be displayed on the screen. The redirection to $2 (which I suspect is either a typo or superstitious behavior

) is not needed. My guess is that $2 is NULL (i.e., there is no second argument to your script, and your redirection to $2 resolves to a redirection to (NULL string) which is effectively stdout -- what the command would have done anyway. I may have misunderstood what was going on, however, so please let me know what I've missed.
Hope this helps.