Как выполнить сценарий, просто щелкнув дважды как .EXE-файлы в Windows?

98

Как я могу сделать исполняемый файл сценария bash двойным щелчком, как .exe файлов в Windows? Я попробовал создание пусковой установки и присвоение ему сценария , но есть два следствия:

  1. терминал мерцает, исчезает, и ничего не делается.
  2. вы должны указать, чтобы работать в терминале, чтобы работать.

У меня есть сценарий, который устанавливает tomcat на автономном ПК, включая все зависимости tomcat в скрипте. Мне нужно заставить скрипт работать с двойным щелчком, например, так как большинство тех, кто использует скрипт, не будут знакомы с Ubuntu.

Забудьте об этом объяснении. Я хочу создать скрипт, который можно запустить, дважды щелкнув по нему, не используя терминал. Кто-нибудь знает, как?

    
задан Community 18.05.2012 в 14:37
источник

9 ответов

114

Я тестировал это, и он работал нормально. Убедитесь, что ваш скрипт начинается с правильного хеширования, например. #!/bin/bash

Затем выполните следующие действия:

Нажмите Alt + F2 , введите dconf-editor и нажмите Enter .

В dconfg-editor перейти: org ➤ gnome ➤ nautilus ➤ preferences

Нажмите executable-text-activation и в раскрывающемся меню выберите:

запуск : запуск сценариев в виде программ.

ИЛИ

запросить : спросить, что делать через диалог.

Закрыть dconf-editor. Вот оно!

Источник: Как запустить исполняемые скрипты в Nautilus? Отвечай любезно Башарат Сиаль.     

ответ дан stevenmc 08.06.2013 в 22:23
66

В новых версиях на nautilus (файлы) перейдите в Edit > предпочтения > Вкладка «Действия» > и измените настройки исполняемого текстового файла.

    
ответ дан Anon 02.11.2014 в 00:33
8

В Ubuntu и всех ОС на базе Unix, afaik, ничто не установлено как исполняемый файл по умолчанию. Есть два способа сделать это.

  1. Щелкните правой кнопкой мыши скрипт или файл, который вы хотите выполнить. Перейдите в «Свойства», затем на вкладку «Разрешения». Установите флажок «Выполнять».

  2. Откройте терминал cd в каталоге, где файл найден. Введите chmod ugo+x filename . Это установит файл для выполнения.

Теперь ваши пользователи могут дважды щелкнуть по своему сердцу.

    
ответ дан SomKit 18.05.2012 в 14:47
3

Я думаю, что здесь создается файл *. desktop :

$ cat shortcut-for-my-script.desktop
[Desktop Entry]
Type=Application
Terminal=true
Name=Click-Script
Icon=utilities-terminal
Exec=gnome-terminal -e "bash -c './script.sh;$SHELL'"
Categories=Application;

Если вы создаете более одного файла *. desktop для одного скрипта, вы можете создавать несколько конфигураций , передавая разные параметры, что очень удобно и удобно, дружелюбный способ.

    
ответ дан h0ch5tr4355 02.10.2015 в 09:22
3

Если вы используете XFce, вы можете сделать скрипт, выполненный в Thunar, выполнив следующую команду:

xfconf-query --channel thunar --property /misc-exec-shell-scripts-by-default \
             --create --type bool --set true

или с помощью gui xfce4-settings-editor и создания того же свойства

    
ответ дан jcubic 14.01.2017 в 21:49
1

Вы должны проверить 3 балла:

  • Конфигурация Nautilus / Nemo: Ссылка
  • Файл сценария должен быть исполняемым : Ссылка
  • Файловая система должна разрешать выполнение :

    1. Введите mount в консоли
    2. Проверьте, имеет ли ваша файловая система флаг noexec
    3. Удалите флаг noexec , отредактировав /etc/fstab и перемонтируйте измененную систему (например, перезагрузка)
ответ дан sangorys 17.05.2015 в 12:14
0

Когда вы создаете запуск на рабочем столе для сценария SHEL или независимо от того, в командной строке, не забудьте сообщить сценарий, который будет выполнен в фоновом режиме.

Сценарий умрет, когда он закончит работу.

    
ответ дан Octávio Filipe Gonçalves 18.05.2012 в 14:42
0

Исходя из значения umask defualt, вы не выполняете разрешения для файлов по умолчанию и должны изменять mod, чтобы получить разрешения на выполнение, примерно так:

chmod u+x filename
    
ответ дан Ali Dehghani 18.05.2012 в 16:13
-1

Специально для Android Studio Вы можете выполнить мой оригинальный ответ здесь :

Создать рабочий стол для запуска:

  • Нажмите Create Desktop Entry.. в меню Сервис .

  • Будетпредложеноввестипароль,ввестипарольтекущеговхода.

  • Наконец,этобудетотображаемоеуведомлениенаэкранеAndroidStudio,например:

  • Вы можете увидеть в Приложения = > Программирование = > Android Studio , и вы можете увидеть на рабочем столе также после перезагрузки системы.

Спасибо. :)     

ответ дан Pratik Butani 17.02.2016 в 07:46