Выполнить скрипт на Linux Mint с Windows Machine

В основном я пытаюсь использовать Linux Mint для отображения презентаций Powerpoint.

Презентации будут обновлены на компьютере Windows, затем пользователь выполнит сценарий, который «обновляет» презентацию на терминалах презентации. У нас это уже сейчас, но с использованием Windows XP, которую мы теперь должны удалить из-за окончания поддержки.

Проблема с Mint заключается в том, что я не знаю, как я запускаю скрипт с компьютера Windows, который убьет текущий процесс презентации, перенесит последнюю копию презентации и затем выполнит ее.

Я попытался использовать plink для скрипта с помощью SSH-соединения, но он не отображает презентацию, потому что она работает в сеансе «SSH», а не в консоли.

Любые идеи очень ценятся, я попал в ментальную стену!

благодаря

  • Как заставить Debian Jessie использовать проприетарный драйвер nvidia?
  • Как связать ключ AltGr + с символом?
  • Невозможно использовать максимальное разрешение, режим xrandr не отображается (адаптер Intel GPU, от DP до DVI)
  • Как сопоставить раскладку клавиатуры консоли с раскладкой клавиатуры X в Linux
  • Увеличьте количество линий, прокручиваемых клещей колесика мыши, везде
  • Как переместить окно X11 в качестве веб-страницы?
  • Как исследовать X11, не видя нажатия клавиши?
  • Графическое исправление ошибок? Исправленный файл op оставил тень «почти drag-n-drop» файла, как его удалить?
  • 3 Solutions collect form web for “Выполнить скрипт на Linux Mint с Windows Machine”

    Я делаю некоторые обоснованные предположения здесь:

    • На машине Linux запущен графический сеанс, скорее всего, сервер xserver.
    • Используя ssh-соединение, вы не можете получить доступ к этому xserver.

    Вы можете попробовать следующее:

    1. Вы копируете новую презентацию на машину linux.
    2. Предполагая, что ваша презентационная программа называется foo (пожалуйста, сообщите нам, как она называется), вы можете убить ее с помощью killall foo или pkill foo . Это будет работать, если вы используете правильного пользователя (или root, которого вы не должны).
    3. Вам нужно будет установить переменную DISPLAY в вашем скрипте ssh для запуска графического приложения. Скорее всего, будет работать следующее (если это не так, см. « Открыть окно на удаленном X-дисплее» (почему «Не удается открыть дисплей»)? ).

       export DISPLAY=":0" 
    4. Теперь вы сможете снова запустить foo и отобразиться на экране.

    Возможно, вы захотите создать для этого сценарий (сделайте исполняемый файл chmod u+x restart-foo.sh :

     #!/usr/bin/env bash # name this script # restart-foo.sh pkill foo export DISPLAY=":0" nohup foo path/to/presentation.xxx & 

    Вы можете выполнить это с помощью ssh (зависит от вашего ssh-клиента Windows, которого я предполагаю) с

     my-command-to-copy-the-presentation ssh user-name@linux-machine ./restart-foo.sh 

    Если ваша настройка позволяет сохранять / экспортировать презентации в pdf , вы можете переключиться с libreoffice, чтобы продемонстрировать презентации на вашей Linux-машине. Evince – программа просмотра pdf и автоматически обновляет представление, если отображаемый файл изменяется.

    В вашей настройке все, что вам нужно сделать, это выяснить, как скопировать обновленную презентацию на машину Linux. Оптимально, вы можете настроить его таким образом, чтобы pdf сохранялся в общей папке Samba. Затем отображаемый pdf будет обновлен сразу, когда пользователь компьютера Windows сохранит его.

    С помощью Fabian мне удалось получить эту работу, используя следующий скрипт:

      #!/usr/bin/env bash mount -t cifs //10.50.18.114/Presentation -o 'username=Administrator,password=***,sec=ntlm' /mnt/share pkill soffice.bin cp -v /mnt/share/Pres.ppt /home/kyle/Documents chmod 777 /home/kyle/Documents/Pres.ppt export DISPLAY=":0" nohup libreoffice --norestore --nolockcheck --show /home/kyle/Documents/Pres.ppt & sessionid="$(pidof -s sshd)" kill $sessionid exit 

    Я использовал plink для выполнения «скрипта SSH», который автоматически запускает этот выше сценарий как root, сеанс kill в конце просто завершает сессию plink ssh, поскольку она просто зависает в конце и не закрывается должным образом.

    Linux и Unix - лучшая ОС в мире.