Quando o bash reclama sobre 'comando não encontrado', significa que o comando cmd1 não pode ser encontrado em $PATH . Portanto, você deve certificar-se de que o caminho para cmd1 esteja sempre em $PATH ou você deve especificar o nome completo do caminho para cmd1 :
plink serveradress -l userid -pwd pass -batch "ls;/where/you/can/find/cmd1"
Você pode encontrar esse nome de caminho completo com which cmd1 no seu shell interativo (aquele via massa).
Você pode definir o PATH em ~/.bashrc ou ~/.profile , ou seja, o .bashrc ou .profile em seu diretório pessoal.
Você pode verificar o PATH com echo $PATH em sua sessão de putty ou com plink serveradress -l userid -pwd pass -batch 'echo $PATH' (observe as aspas simples). Se você fizer as duas coisas, verá uma diferença.