Как создать ярлык в ubuntu для запуска sh shell скрипта

Обновлено: 01.07.2024

Проверяется щелчком правой кнопкой мыши свойств, чтобы проверить, был ли он исполняемым и был ли он ..

Но что бы я ни делал, при двойном щелчке по нему запускается gedit. Я пробовал "Открыть с помощью", но там не отображается приложение терминала. Я искал в сети, но нашел способ связать файл, не объединяя его в один «файл ярлыка»

Также проверьте владельца и разрешения. Имеет ли пользователь, щелкающий по нему, разрешение на его запуск? Ваши команды не могут быть правильными - вы ссылаетесь на ssh_home.sh и /ssh_home , которые не являются одинаковыми файлами. @Misery: Это /bin/sh не так /usr/bin/sh . ( /usr/bin/sh будет работать в системах, где /bin и /usr/bin в одном каталоге; я не думаю, что это относится к Ubuntu>)

Я знаю, что это давно, но если кто-то спросит, у меня есть этот ответ.

  1. Открыть наутилус
  2. Меню Файлы -> вкладка поведения
  3. Запускать исполняемые текстовые файлы при их открытии

В более поздних версиях этот параметр находится в: меню «Файлы» -> «Правка» -> «Настройки» -> вкладка «Поведение».

В Ubuntu 14.10 переместите указатель мыши в верхнюю часть экрана, и появится строка меню «Файл», «Редактировать» и т. Д. Нажмите РЕДАКТИРОВАТЬ -> Настройки -> вкладка Поведение

Это должен быть принятый ответ ИМХО. Я был довольно расстроен, пытаясь понять, почему я не смог запустить скрипт оболочки из Nautilus. Работал. Щелкните правой кнопкой мыши по моему сценарию оболочки в файловом браузере. Создана ссылка. Затем перетащите ссылку на рабочий стол. Также сделал шаг выше в обзоре файлов -> Настройки-> запустить вместо просмотра. Одна сложность заключается в том, что это влияет на все исполняемые файлы. (Это может быть то, что вы хотите.) Отличный ответ! В Ubuntu 18.04 я установил «Спросить, что делать», чтобы я мог запускать или отображать его каждый раз, когда дважды щелкаю такой файл. Благодарность!

Я думаю, что было бы лучше использовать файл запуска для вашего сценария, создав

/Desktop/ssh_home.desktop файл со следующим содержимым:

Таким образом, вы получите кликабельную иконку, которая запустит ваш скрипт.

Возможно, вам также придется установить флаг исполняемого файла с помощью chmod :

Этот метод работает, но я предпочитаю решение с одним файлом . @michel Если весь скрипт выполняется ssh host , он вам не нужен, просто измените строку Exec на Exec=ssh host . Это единственное решение, которое сработало для меня.

«Ловушка» для меня заключалась в том, что я щелкал правой кнопкой мыши по файлу, чтобы найти способ изменить поведение (чтобы скрипт запускался вместо открытия в gedit). Не щелкай правой кнопкой мыши! Скорее откройте из «обычной» строки меню:

Изменить-Preferences-Behavior и изменить на «запустить» или «спрашивать каждый раз».

Комментарий: На мой вкус должен быть способ запуска программы с помощью щелчка правой кнопкой мыши тоже. Тем более, что щелчок правой кнопкой мыши приводит к меню «открыть с помощью», которое позволяет искать «открыть с помощью bash», однако «bash» не включен в качестве опции .

Когда я открываю файл .sh, он открывается в gedit вместо терминала. Я не могу найти какой-либо вариант, похожий на правый клик → Открыть с → Другое приложение . → Терминал.

Как открыть этот файл в терминале?

Предварительное условие

Прежде чем вы сможете запустить файл .sh, вам необходимо сделать его выполнимым:

Щелкните правой кнопкой мыши файл. Выберите «Свойства». Выберите «Разрешения». Выберите «Разрешить выполнение файла как program

Warning

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

Самый простой способ

Щелкните правой кнопкой мыши на файле Нажмите «Запустить» в терминале

. Это проблема. Терминал немедленно закроется, и вы не сможете увидеть выход.

Простой способ

Как это делают профессионалы [ ! d22] Открытые приложения -> Аксессуары -> Терминал Найдите, где .sh-файл. Команды ls и cd ls будут перечислять файлы и папки в текущей папке. Попробуйте: введите «ls» и нажмите Enter. Когда вы увидите папку, в которую хотите войти, запустите cd, а затем пробел, а затем имя папки. Если вы в папку, которую вы не хотите, запустите cd . чтобы перейти на один уровень вверх Выберите «Разрешения»

Почему это сложный путь?

Терминал имеет богатый набор мощных инструментов, доступных для ввода команд. Профессионалы найдут файл .sh, набрав ls и cd. Как только вы попадете в правильный вирус , вы можете запустить скрипт следующим образом:

./script1.sh | grep apples > ./only-apples

В этот файл можно найти тысячи вещей, просто набрав несколько команд.

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

И затем откройте файл следующим образом:

chmod +x filename.sh, если вы уже перешли к пути к файлу затем запустите файл с помощью любой из следующих команд:

sh filename.sh ./filename.sh . filename.sh

Щелкните правой кнопкой мыши файл .sh и сделайте его исполняемым. Откройте терминал (Ctrl + Alt + T). Перетащите файл .sh в окно терминала и смотрите в страхе.

Откройте терминал и перейдите к папке, в которой находится файл .sh. Затем введите:

sh <name of file>.sh

Если вы поместите свой сценарий оболочки или другой исполняемый файл, который вы создаете в / usr / local / bin, он будет найден и выполнен без необходимости указания пути к папке в командной строке или добавления имени ./ к имени. Например, я создал следующий простой 3-строчный скрипт bash для отображения UUID дисков:

Я вызвал файл uuid и поместил его в / usr / local / bin. Все, что мне нужно ввести в командной строке:

Ну, я тоже столкнулся с той же проблемой. Я хотел выполнить файл .sh, и он был открыт с помощью Gedit на CentOS 7. Вот что я сделал:

Я перешел к пути к файлу .sh, который я хотел выполнить. Я открыл терминал. И я просто перетащил и опустил окно терминала, и он автоматически взял этот файл вместе с пустым в качестве ввода. Нажмите Enter, и вы готовы к работе!

Вы должны пометить сценарии оболочки как исполняемые, чтобы запустить их из диспетчера файлов:

Щелкните правой кнопкой мыши по файлу .sh и выберите «Свойства». На вкладке «Разрешения» установите флажок «Разрешить выполнение файла в виде программы: Закройте окно «Свойства» и дважды щелкните файл. Появится диалоговое окно, дающее вам возможность запускать скрипт в терминале:

Дайте разрешение на выполнение для вашего скрипта:

chmod +x /path/to/yourscript.sh

И для запуска вашего скрипта:

Поскольку . ссылается на текущий каталог: if yourscript.sh находится в текущем каталоге, вы можете упростить это:

2 основных шага.

в терминале, используйте gedit для записи и сохранения сценария с расширением «.sh» на рабочем столе. (но можно использовать любой текстовый редактор), откройте Nautilus и щелкните правой кнопкой мыши файл script.sh. по свойствам, установите флажок «разрешить выполнение файла ..» в меню «Наутилус», нажмите «Файл», затем «Настройки», затем выполните проверку «запустить исполняемые текстовые файлы при их открытии».

Теперь, когда вы дважды щелкните файл на рабочем столе, он должен выполнить. нет необходимости в . или ./

В Ubuntu 13.04 исполняемые файлы, открытые в Nautilus, теперь открыты в gedit по умолчанию, а не запрашивают выполнение пользователем. Чтобы включить классическое поведение, вам необходимо настроить параметры:

Nautilus → Меню «Правка» → «Настройки» → вкладка «Поведение» → каждый раз щелкайте переключателем рядом с запросом «Ask»

В Ubuntu 16.04 это как открыть его в Terminal:

Перейдите к File Manager > Edit > Preferences > Behavior для Executable Text Files и выберите Ask each time.

Проблема в том, что это по умолчанию установлено значение View Executable Files when they are opened.

Я Linux в Linux, и у меня была такая же проблема. Если все остальное не выполнено:

Открыть терминал. Откройте папку, содержащую файл .sh. Перетащите файл в окно терминала. Путь файла появится в терминале. Нажмите Ввод. Voila, ваш .sh-файл запущен.

Перейдите в каталог, где находится файл .sh, с помощью cd. В этом примере я сохранил файл sh как

, прежде всего pwd, чтобы выяснить, где вы находитесь, и если он вернет /home/username (где username является вашим реальным именем пользователя ), вы можете запустить

Если вы, кажется, где-то в другом месте, вы можете использовать абсолютный путь

все это способы описания одного и того же места. После того, как вы перешли к местоположению своего сценария, введите

Если вы можете увидеть файл sh на выходе, вы можете использовать chmod, чтобы сделать его исполняемым. В моем случае помните, что имя файла test.sh, поэтому я бы запустил

chmod u+x test.sh

Теперь, когда мы находимся в том же каталоге, что и скрипт, мы должны указать оболочку, которую хотим выполните файл, указав его местоположение ./ (текущий каталог, за которым следует разделитель путей, чтобы отличить его от имени файла). Для запуска моего файла я бы набрал:

Есть программы в системе, которые вы запускаете с помощью sh скриптов.
В этой статье покажу как создать ярлык на sh ( shell ) скрипт в Главном меню Dash.


Советую почитать полезную статью про запуск sh скриптов в Ubuntu:

Буду показывать на примере приложения Intellij Idea .

Итак, запускается оно с помощью скрипта idea.sh :


В этой же папке находится и картинка (иконка), которую будем использовать для иконки ярлыка.

Приступим к созданию ярлыка для sh скрипта.

Открываем терминал.
Переходим по адресу, где лежат все наши ярлыки приложений:
cd /usr/share/applications/

Теперь создаем ярлык нашего нового приложения командой:
sudo gedit idea.desktop
Вместо idea можно написать ваше название. Расширение desktop обязательно.

И вставляем в наш текстовый файл следующее содержимое:

Должно получиться как на скриншоте:


Теперь разберем эти свойства подробнее:
Name- имя приложения, которое будет отображаться под иконкой в Главном меню;
Keywords- слова, по которым будет искаться данный ярлык в Главном меню;
Exec- строка запуска приложения;
Terminal- (true или false)- запускать или нет приложение в окне терминала4);
Type- определяет «раздел» в Главном меню, где будет находится ярлык приложения;
Icon- путь или общесистемное название иконки;
Path- путь к рабочему каталогу приложения);
Categories- категории, к которым будет относится ярлык вашего приложения при выборе в Главном меню фильтров. Проще всего подсмотреть в ярлыке другого приложения, категория которого вам подходит.
NoDisplay(true или false)- Не отображать иконку в Главном меню(если true);

Заполним поля нашего приложения.

Нам достаточно заполнить Name и Exec.
Итак прописываем в Name то имя, которое хотим, чтобы отображалось в меню Dash Unity.

Остановимся поподробнее на поле Exec, сюда нужно прописать следующее, чтобы запустился sh скрипт:
Сначала команду запуска скриптов sh , затем путь до cкрипта sh ( полностью путь до скрипта ):

В моем случае путь до скрипта это: /home/edward/idea-IU-129.713/bin/idea.sh
Ваш путь можно легко скопировать, если вызвать свойства файла скрипта в файловом менеджере Наутилусе:


В поле Icon прописываем путь до нашей картинки (полностью):

В итоге должно получиться подобное заполнение:


Теперь можно найти наш ярлык в главном меню Dash:


И переместить его на панель быстрого запуска Unity.


Вот и всё. Как видите ничего сложного.

Главная ОС Linux Как создать ярлык в Ubuntu

Как создать ярлык в Ubuntu

Ярлыки приложений хранятся в двух каталогах, один системный /usr/share/applications , а другой в каталоге каждого из пользователей по адресу $HOME/.local/share/applications/.


Ярлыки представляют из себя текстовые файлы с расширением .desktop:


А сам текстовый файл подобен этому:


Вот описание самых часто используемых параметров:

Name - имя приложения, которое будет отображаться под иконкой в Главном меню;

Keywords - слова, по которым будет искаться данный ярлык в Главном меню;

Exec - строка запуска приложения;

Terminal - (true или false)- запускать или нет приложение в окне терминала4);

Icon - путь или общесистемное название иконки;

Обязательные два - Name и Exec.


Отредактировать можно легко и просто с помощью графической среды, но создавать ярлыки с помощью создания текстовых файлов и прописывая параметры - это то ещё занятие.

Создание ярлыков в Ubuntu.

В Gnome(и в Unity) есть довольно удобная утилита, которая называется gnome-desktop-item-edit, которая входит в пакет gnome-panel, который не установлен по дефолту в системе.

Давайте же установим:


Флаг --no-install-recommends означает, что установится только пакет gnome-panel без дополнительных пакетов.

Теперь можно запускать приложение, выполнив в терминале команду вида:


К примеру, создадим ярлык для текущего пользователя:


И откроется графическое окно:


Может нажать кнопку "Просмотреть" и выбрать исполняемый файл программы (то есть, не вводить в ручную). Также, изменить иконку на любую, просто кликнув по иконке и откроется файловый менеджер с выбором. И после нажатия "Ок" получаем ярлык в списке приложений:


Если захотим создать ярлык приложения в системном каталоге, то нужно будет выполнять команду с правами суперпользователя:


Но опять же, надо в терминале вводить команду создания ярлыка. Давайте создадим два ярлыка создания ярлыков приложений в системном каталоге и в каталоге текущего пользователя.

Для начала нам потребуется установить gksudo, если она у вас не установлена:


Открываем терминал и выполняем команду:


Создаем ярлык создания ярлыков в системном каталоге:


в команду запуска прописываем:

gksudo "gnome-desktop-item-edit /usr/share/applications --create-new"

Вписываем имя и выбираем иконку, какую захочется.

Создаем ярлык создания ярлыка в домашнем каталоге текущего пользователя:


в команду запуска прописываем:

sh -c "gnome-desktop-item-edit $HOME/.local/share/applications --create-new"

Вписываем имя и выбираем иконку, какую захочется.

В итоге имеем два ярлыка среди приложений:


И теперь, если мы хотим создать ярлык для приложения или запуска скрипта, то нам не надо создавать никакие текстовые файлы или использовать терминал. Всё делается через графический интерфейс.

Читайте также: