Как выполнить скрипт python на основе сервера ssh-соединения?

Я подключен к Raspberry Pi через ssh. Я пытаюсь запустить скрипт на RPi, но вместо использования nano editor на терминале я хочу выполнить скрипт python на основе моего Mac (сервера SSH).

Однако при вводе

'sudo python /Users/User/Pythonscript.py'

терминал возвращает

'python: can't open file '/Users/User/Pythonscript.py': [Errno 2] No such file or directory'

И все же этот файл существует в этом каталоге.

Любые идеи?


person user2075625    schedule 05.01.2014    source источник
comment
Я ничего не понимаю. Где сценарий? На сервере? На клиенте? Что значит Я пытаюсь запустить скрипт на RPi, но не использую редактор nano на терминале?   -  person maurelio79    schedule 05.01.2014
comment
Сценарий, который я пытаюсь запустить, находится на моем Mac, который действует как сервер в отношениях SSH, которые я установил между своим Mac и Raspberry Pi. В настоящее время я использую терминал Mac для общения с Raspberry Pi, и именно здесь я написал сценарий с помощью редактора Nano внутри терминала. Можно ли создать файл python, существующий на Mac, который может быть выполнен Raspberry Pi?   -  person user2075625    schedule 05.01.2014
comment
Подождите... Раньше вы писали, что подключаетесь по ssh к RPi, поэтому RPi — это сервер, а ваш Mac — клиент. Где сценарий?   -  person maurelio79    schedule 05.01.2014
comment
Ok. Всё равно не уверен, чего ты хочешь: ssh [user@]hostname [command] Но, извини, если спрошу... зачем тебе это?   -  person maurelio79    schedule 05.01.2014


Ответы (2)


Хорошо, если я правильно понял, у вас есть скрипт на вашем клиенте и вы хотите выполнить его на Pi из ssh.

  1. scp /path/to/script.py user@hostname:/path/to/
  2. затем добавьте свой ключ rsa на свой сервер. Это идеальное руководство рассказывает ты как.
  3. Затем просто напишите .sh, что позволит получить доступ к вашему серверу ssh user@hostname, затем cd /path/to и, наконец, python script.py
person infm    schedule 05.01.2014
comment
Вы имеете в виду, что, может быть, он просто спрашивает, как скопировать скрипт с Mac на Pi, а затем выполнить скрипт на Pi?? :-О - person maurelio79; 06.01.2014
comment
Я точно не знаю, но, вероятно, он пытается запустить скрипт на Mac от Pi, поэтому он может сделать это, как я предложил выше... Но, вообще-то, я не совсем понял, что он хочет. - person infm; 06.01.2014

У вас есть файл на вашем Mac, и вы хотите запустить его на своем Pi. Необходимо сделать две вещи: во-первых, передать файл на Pi. Во-вторых, войдите в Pi и запустите его. По-видимому, вы справились со вторым шагом, поэтому я обращусь к шагу 1.

Простое решение: scp , например scp /Users/User/Pythonscript.py <user>@<ip_of_pi>:<target_dir>

Решение, которое может быть более осуществимым в долгосрочной перспективе, если вы хотите разрабатывать локально: sshfs. Он доступен через Homebrew. Вы монтируете каталог локально, и все, что вы изменяете, автоматически отражается в соответствующем каталоге на Pi. Вот руководство по установке и использованию sshfs. На первый взгляд, это кажется разумным.

Независимо от того, как вы доставите свой скрипт на Pi, вам нужно найти его на Pi и выполнить там.

person mknecht    schedule 05.01.2014