Nemo Custom Action (скрипт .sh) не выполняется

Другим решением является использование xdotool для имитации нажатий клавиш, возможно, полезно в скриптах:

Установите комбинацию клавиш в gnome-terminal:
Edit > Keyboard Shortcuts... > Terminal > Set Title
Например, чтобы определить Shift+Ctrl+Y. Установите xdotool, если у вас его еще нет:
sudo apt-get install xdotool
Следующая последовательность команд (которую вы также можете использовать в сценарии bash) установит заголовок терминала / вкладки (выйдите из пробелов с помощью \): [ f3] [необязательно] Вы также можете использовать xdotool, например откройте новую вкладку и задайте заголовок с помощью приведенных выше команд, используя:
xdotool key ctrl+shift+t
. Рассмотрите возможность добавления времени сна до и после открытия новой вкладки, например. sleep 1 (ждать 1 секунду).

Это не самое элегантное решение, но это сработало для меня! Предыдущие ответы не были выполнены в моем случае. Я использую gnome-terminal в Ubuntu 14.04, и я хотел создать сценарий bash.

1
задан 11 February 2014 в 23:29

2 ответа

Я как-то пришел к решению этой ситуации в Корине. Файл .nemo_action состоит из следующего содержимого.

[Nemo Action]
Name=OCR The Screenshoot
Comment=OCR Function for Nemo File Manager
Selection=S
Exec=gnome-terminal --working-directory=%P -e "/media/storage/Scripts/actions/ocrFile.sh %F"
Icon-Name=gtk-execute
Extensions=png;jpg;jpeg;bmp;
Active=true

При запуске терминала для выполнения задания это скорее обходной путь. Все остальное ничего не дало результатов.

Сам скрипт bash оставался почти таким же, измененным только для директивы, позволяющей держать терминал открытым до выполнения команды.

[ f2]

То, что я жажду в конечном счете, - сделать этот процесс полностью бесконтактным. Мне кажется, что этот процесс несколько отличается от процесса Gnome2 (Mate). Здесь скрипт bash, который состоит из терминальных команд, не выполняет «где-то в фоновом режиме». С скриптами bash, которые вызывают приложения GUI. Директива Gnome3 Exec= позволяет получить значение <script.sh %F>.

1
ответ дан 24 May 2018 в 11:54

Это сценарий bash? Попробуйте

Exec=/bin/bash /home/user1/.local/share/nemo/actionsocrFile.sh %F

(или даже /bin/sh, который обычно dash может быть немного быстрее.)

Что касается отладки, в командной строке:

[ f2]

Затем запустите действие из окна nemo, которое будет открыто.

0
ответ дан 24 May 2018 в 11:54

Другие вопросы по тегам:

Похожие вопросы: