Looks like adding a trailing space to the command fixes it...
Is there any reason I couldn't use stdin redirection with ExecuteCommand?
ie:
var linuxCommmand = "/opt/ndmcli -x";
var linuxOptions = "sel stat pnum=1 detail=yes;\nquit;";
SSH.ExecuteCommand(String.Format("{0} <<!!\r\n{1}\r\n!!\r\n", linuxCommand, linuxOptions));
Consulting the SessionLog shows the command is correct, with this:
!! ; echo "WinSCP: this is end-of-file:$?"
Thanks!