После прочтения ответа о том, как заставить файл запускать команду в терминале при запуске, я попытался сделать это сам.
Я создал новый документ, ввел Следующее и сохраненное.
#! /bin/bash
echo "this is a test"
Затем я перешел к Right-Click > Properties > Permissions и установил флажок «Разрешить выполнение файла как программы».
Однако, когда я дважды щелкаю по документу, он просто открывается в моем текстовом редакторе (который я считаю gedit). В меню правой кнопки мыши я не вижу никаких параметров для запуска файла в терминале.
Я попытался сделать это и с другими файлами. Например, я установил WINE и попытался установить программу Window. WINE сказал просто запустить установщика, но ничего не получилось, когда я попытался. Я отметил, что он работает как программа, и все равно это не сработает. Я мог установить его только Right-Click > OpenWith и выбрать WINE.
Как ни странно, я скопировал мою папку Keepass-2.28 Portable из моего раздела Windows в свой раздел Ubuntu и попытался запустить исполняемый файл. Keepass выстрелил прямо, хотя я не помещал этот файл для запуска в качестве программы. У меня есть Keepass 2.25 из репозитория, установленного в моей системе, если это имеет значение.
Я запускал Ubuntu 14.04 в режиме двойной загрузки в течение нескольких недель. Единственное, что я могу понять, я сделал, это испортит это, я использовал Synaptic Package Manager для удаления пакета из KDE Desktop Environment, пытаясь удалить альтернативную среду рабочего стола, которую я установил через терминал. Я не помню, какой пакет был, но единственным пакетом в этой категории сейчас является appmenu-qt5. Насколько я могу судить, удаление этого пакета ничего не сказалось, и я уверен, что у меня были проблемы с запуском файлов в качестве программ, так как я получил Ubuntu.
EDIT: Я проверил, и я Не думаю, что этот вопрос является дубликатом , чтобы файл запускал команду в терминале при запуске . Мой Ubuntu находится на разделе ext4, и оттуда я пытаюсь запустить программы. Я также не рассматривал попытку изменить разрешения через терминал или что-то в этом роде, я просто пытаюсь запустить программу, когда я проверяю параметр в меню свойств. Пожалуйста, поправьте меня, если я ошибаюсь или что-то не хватает.
Я подозреваю, что вам нужно изменить настройки файлового менеджера, чтобы он либо запускал скрипт bash напрямую, либо спрашивал, хотите ли вы запустить сценарий или отобразить код.
I не знаю, работает ли текущая версия файлового менеджера Ubuntu одинаково, но пару лет назад исправление было следующим:
«Откройте диспетчер файлов Nautilus и нажмите на шестерню ( Параметры местоположения) в правом верхнем углу окна. Перейдите к «Настройки» - «Параметры файла - Поведение - Исполняемые текстовые файлы». Набор радиокнопок позволяет установить параметр по умолчанию. Мое предпочтение относится к «Спросить каждый раз». , когда я дважды нажимаю на файл сценария, мне предоставляется возможность запускать сценарий или отображать (редактировать) его содержимое ».
(см. https://linuxnorth.wordpress.com/2013/11/02/running-bash-scripts-in-ubuntu/)
Изменить: это решение будет работать для отдельных файлов, но если вы хотите изменить это поведение в общесистемной системе (то есть для каждого исполняемого текстового файла), проверьте другие ответы.
Вам нужно будет создать файл .desktop, чтобы запустить скрипт прямо из Nautilus:
Создайте файл .desktop в нужном месте: gedit /<path_to_dektop_file>/test.desktop Вставить код ниже Save Exit Сделать исполняемый файл: chmod u+x /<path_to_dektop_file>/test.desktopКод:
[Desktop Entry]
Type=Application
Name=Test
Exec=/<path_to_shell_script>/test.sh
Затем просто дважды щелкните файл .desktop, созданный.