Рейтинг:2

Запустить скрипт из Nautilus, не открывая терминал

флаг kn

У меня есть несколько сценариев Python, которые предоставляют пользовательский интерфейс с использованием GTK (т.е. это не терминальное приложение). В Ubuntu 21.04 двойной щелчок в Nautilus предоставит мне возможность запускать их с терминалом или без него. После обновления до 21.10 есть только опция «Запуск от имени программы», которая всегда открывает (ненужный) терминал.

Есть ли способы избежать открытия терминала при запуске скрипта из Nautilus?

David avatar
флаг cn
https://help.ubuntu.com/stable/ubuntu-help/report-ubuntu-bug.html.en
N0rbert avatar
флаг zw
Возможно, пришло время отказаться от Nautilus и вместо этого использовать Nemo или Caja.
Рейтинг:1
флаг jp

В ответ на вопрос «Предпочтение «Исполняемые текстовые файлы» считается бесполезным» на gitlab возможность спросить, что делать при двойном щелчке исполняемого файла, была удалена из графического интерфейса и запускала программу без терминала.

Есть два способа, которые я знаю, чтобы достичь этого


1- Создайте скрипт nautilus, который запускает исполняемый файл в фоновом режиме, а затем закрывает свой собственный терминал:

поместите сценарий оболочки в ~/.local/доля/наутилус/скрипты/ и пометьте его как исполняемый файл, чтобы он отображался в контекстном меню под Скрипты подменю и напишите в нем следующие команды:

#!/бин/ш
nohup "./$1" >/dev/null 2>&1 &

Вы можете обратиться к этот ответ на вопрос для некоторого объяснения относительно нет и отречься. (еще один способ отсоединить процесс) Однако обратите внимание, что процессы, отсоединенные таким образом, не будут автоматически закрываться при выходе из системы пользователя.

Вы также можете просто использовать ш -с './$1 &' вместо всей неприятности nohup, как заметил комментарий по тому же вопросу.

2- Используйте устаревший действия файлового менеджера чтобы добавить в контекстное меню опцию для запуска исполняемого файла без терминала:

  1. sudo apt-get установить действия файлового менеджера
  2. либо запустите его с помощью лаунчера, либо запустите его бинарник прямо из терминала fma-config-инструмент
  3. если вы не хотите, чтобы ваши настраиваемые параметры контекстного меню находились внутри подменю, перейдите в Edit-> Preferences-> снимите флажок Создайте корневое меню FileManager-Actions.
  4. Теперь добавьте новое действие. назовите его как хотите, это имя будет показано в контекстном меню.
  5. пойти в Действие вкладку и убедитесь, что Наутилус пункт раздел проверяется на выбор и не проверено на место расположения как в этот скриншот
  6. пойти в Команда вкладку и указать путь к %f это должно выглядеть это
  7. пойти в Исполнение вкладку и убедитесь, что режим выполнения установлен на нормальный. это позволяет выполнять в скрытом терминале. Скриншот
  8. пойти в Возможности вкладку и добавьте Исполняемый отфильтруй потом проверь Должен соответствовать всем опция для этого фильтра. Скриншот
  9. теперь сохраните (прямо рядом с тем местом, где вы добавили действие), чтобы изменения вступили в силу. и теперь вы увидите, что ваша опция добавлена ​​в контекстное меню для файлов с установленным исполняемым битом, как в этот скриншот (в моем случае я назвал его запуском в фоновом режиме)

ПРИМЕЧАНИЕ. Вы можете использовать те же команды, что и в сценарии, в действия файлового менеджера. Вам просто нужно установить команду (Скриншот) к

/бин/ш

и его параметры

-c 'nohup "%f" >/dev/null 2>&1 &'

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.