LINUX.ORG.RU

mc.ext и запуск исполнимых файлов

 ,


1

1

По умолчаниюв конце файла mc.ext прописано

default/*
  Open=
При таком описании Enter на исполнимом файле без распознанного расширения запускает этот файл на исполнение. Хочется в конце файла mc.ext прописать что-то вроде
default/*
  Open=screen -d -m xdg-open %f
Это должно обеспечить использование системных ассоциаций без нудного их переписывания в mc.ext. Но после этого никакие файлы по Enter не исполняются.

Можно ли как-то настроить mc, чтобы по Enter на файле с атрибутом «исполнимый» mc запускал этот файл, а не пытался его открывать в соответствии с расширением?

А screen -d -m xdg-open %f с реальным файлом работает? Плюс могут быть заморочки с полными путями: %f это «имя файла» или «полный путь + имя»?

ziemin ★★ ()

Написать скрипт вроде if test -x "$1"; then exec "$1"; else exec xdg-open "$1" и прописать его в качестве default?

AITap ★★★★★ ()

У меня так:

default/*
	Open=(pcmanfm %f >/dev/null 2>&1 &)
Исполняемые файлы pcmanfm предлагает на выбор или исполнить, или запустить в терминале. Для скриптов есть еще возможность открыть его в редакторе. Достаточно удобно.

ATIpro ★★ ()
Ответ на: комментарий от AITap

Просто и эффективно! Спасибо за идею. Работает отлично вот так:

Open=if test -x %f; then %f; else screen -d -m xdg-open %f; fi
akorop ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.