Есть ли способ запустить python script на удаленном компьютере без его отправки?

Я могу запустить оболочку script на удаленном компьютере с помощью ssh. Например:

ssh -l foo 192.168.0.1 "`cat my_script.sh`"

Теперь я хочу запустить python script без отправки файла .py. Есть ли способ?

Ответ 1

Это поместит содержимое my_script.py на ваш компьютер в команду echo, которая выполняется на удаленном компьютере и передается в python.

ssh -l foo 192.168.0.1 "echo '`cat my_script.py`' | python"

Если вы хотите добавить аргументы командной строки, это должно быть так же просто, как положить их после команды python следующим образом:

ssh -l foo 192.168.0.1 "echo '`cat my_script.py`' | python -testSwitch -arg 0"

Убедитесь, что аргументы командной строки находятся внутри двойных кавычек команды, которую вы отправляете на удаленный хост.