rsh espera o nome do host após as opções, por exemplo,
rsh -l root hdvg-1 lspci
Caso contrário, está tentando executar "-l" .
O comando grep tem uma cotação não balanceada e deve ser algo como
lspci | grep 'certain string'
Se você quiser verificar se o comando lspci está disponível em sua máquina, você poderia fazer apenas
rsh -l root hdvg-1
para obter um shell e digite lspci nesse shell. A propósito, como rsh é provavelmente um alias para ssh , você deve usar ssh para evitar confusão.
Outra fonte de confusão é que ao usar shells remotas, sua variável de ambiente $PATH pode não ser definida como se você tivesse feito login normalmente. De acordo com uma discussão no servidor rsh "script ..." que $ PATH é usado ,
rshrequires fully qualified names of executables, scripts to be safe. It uses/usr/bin/sh(whatever that evaluates to on the remote server), and thePATHis usually limited:/usr/bin:/usr/sbin
Na sua máquina remota, lspci pode não estar no $PATH usado para a chamada remota.
Leitura adicional:
- ssh - cliente OpenSSH SSH (programa de login remoto)
- Rsh (Microsoft TechNet)