Как выполнить скрипт Nautilus, написанный на Python, в окне терминала gnome, которое остается открытым?

Допустим, я хочу выполнить простой скрипт Python из Nautilus, файлового менеджера GNOME по умолчанию:

#!/usr/bin/python3
print("Hello")

Конечно, цель состоит в том, чтобы взаимодействовать с выбранными файлами в Nautilus, но я хочу, чтобы все было просто.

Я сохраняю скрипт в папку ~/.local/share/nautilus/scripts/ и тогда я могу выполнить его из контекстного меню правой кнопкой мыши:

Контекстное меню скрипта наутилуса

Как я могу выполнить этот скрипт наутилуса внутри gnome-терминала и оставить терминал открытым в конце скрипта?

1 ответ

Решение

Я обнаружил, что могу достичь того, что хочу, используя два файла сценария.

Папка Script

1) Hello.sh открыть гном-терминал (и потенциально оставить его открытым)

Первый файл скрипта ~/.local/share/nautilus/scripts/Hello.sh появится в контекстном меню скрипта Nautilus и откроет gnome-терминал для выполнения .Hello.py:

#!/bin/bash
gnome-terminal -- python3 ~/.local/share/nautilus/scripts/.Hello.py

Чтобы заставить окно терминала оставаться открытым после выполнения (для просмотра выходных данных или для целей отладки, если оно не работает), настройте его следующим образом, чтобы gnome-терминал выполнялся bash в конце:

#!/bin/bash
gnome-terminal -- bash -c "python3 ~/.local/share/nautilus/scripts/.Hello.py; bash"

2) .Hello.py выполнить настоящий скрипт

Затем второй файл сценария ~/.local/share/nautilus/scripts/.Hello.py будет выполняться в ранее открытых окнах терминала gnome, но будет скрыт из контекстного меню скрипта nautilus.

#!/usr/bin/python3
print("Hello")
Другие вопросы по тегам