Ao usar ssh com um comando, ele pode não criar um shell de login, mesmo que seu script use #!/bin/bash -l .
Teste ssh user@server-A bash -l e execute seu script. Você também pode criar algo como
#!/bin/bash
export
Em seguida, execute-o após efetuar login manualmente ( ssh user@server-A ) e ao usar ssh com um comando ( ssh user@server-A name-of-that-script.sh ).
Por exemplo, no Mac OS X, usar ssh martin@nathan bash -l não define PS1 , enquanto que% normal ssh martin@nathan shell interativo.
Outra diferença importante é que um pseudo-terminal é alocado apenas quando executado de forma interativa (login sem um comando).