Passar param para ssh usuário @ server bash --login -c FILE.rb PARAMS

1

Eu preciso executar o script bash ruby sobre o ssh no servidor remoto:

#  - get params from local bash session
ssh user@server bash --login -c FILE.rb 

FILE.rb agora não recebe nenhum params bash --login é necessário para carregamento de ruby (sobre RVM)

    
por mixo 11.12.2015 / 14:27

2 respostas

1

Você pode tentar colocar o comando inteiro entre aspas para garantir que ele não seja interpretado por ssh :

ssh user@server "bash --login -c \"FILE.rb \""

Se não funcionar, verifique se todos os parâmetros de que você precisa estão realmente na variável by echo -ing antes da chamada ssh .

Exemplo de trabalho mínimo:

param="--version";
ssh user@server "bash --login -c \"git $param\""
    
por Jakuje 11.12.2015 / 14:37
1

-c usa apenas um único argumento, por isso é necessário fazer mais cotações:

ssh user@server bash --login -c "FILE.rb "
    
por glenn jackman 11.12.2015 / 14:44