Рейтинг:2

Как создать значок на рабочем столе, который запускает терминальную программу в Ubuntu 20.04?

флаг us

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

[Вход на рабочий стол]
Имя=Расшифровать файлы
Exec=gnome-terminal --working-directory="/home/user/Desktop/Encrypted Files" -- ccrypt -d `ls`
Терминал = Ложь
Icon=утилиты-терминал

Файл .desktop находится в пользовательском каталоге ~/Desktop и был сделан исполняемым с помощью chmod +x decryptfiles.desktop. Но этот файл ничего не делает при нажатии. Нет опции «разрешить запуск» при щелчке правой кнопкой мыши.

Как создать значок на рабочем столе, который запускает терминальную программу в Ubuntu 20.04?

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

Terrance avatar
флаг id
Измените строку `Terminal=False` на `Terminal=True`, чтобы запустить ее в терминале.
ambitiose_sed_ineptum avatar
флаг us
@Terrance [Этот] (https://askubuntu.com/questions/436891/create-a-desktop-file-that-opens-and-execute-a-command-in-a-terminal) ответ говорит другое. ``gnome-terminal`` позаботится об этом.
Terrance avatar
флаг id
Достаточно справедливо, но похоже, что вы пропустили добавление `;$SHELL` в конец вашей команды, чтобы держать терминал открытым.
ambitiose_sed_ineptum avatar
флаг us
@Terrance Спасибо за беспокойство, но я хорошо знаю, как должны работать мои команды. Мой единственный вопрос касается того, как заставить файл .desktop запускаться при нажатии.
Terrance avatar
флаг id
Выполнение chmod +x заставит его работать. Вероятно, он работает, но происходит так быстро, что закрывается и, похоже, ничего не делает. Возможно, вам нужно будет добавить вторую команду в конце, которая, возможно, выводит дату и время в файл журнала, чтобы вы знали, что она запущена. Кроме того, добавление `;$SHELL` позволит вам увидеть, правильно ли он работает.
ambitiose_sed_ineptum avatar
флаг us
@Терренс. Я попробовал ваше решение, оно не сработало. Опять же, я знаю, как работают команды, которые я использую. Если я запускаю команду непосредственно в терминале, открывается новое окно терминала, запрашивает у пользователя пароль для расшифровки файлов, затем расшифровывает их и закрывает. Файл рабочего стола вообще не запускается, это мой единственный вопрос.
Terrance avatar
флаг id
На самом деле, я думаю, что вам не хватает некоторых вещей в файле рабочего стола. Я только что создал его, и у меня есть пара строк, которых вам не хватает. Я удалил их из своего в качестве теста, и он не запускался, пока строки не были добавлены обратно. Вам не хватает «Версия = 1.0» и «Тип = Приложение», которые, если вы посмотрите в своем связанном ответе, также содержат эти строки.
флаг us
Решение @Terrance сработало для вас? Если это так, сообщите нам об этом, и Терренс опубликует свое решение в качестве «ответа», который вы можете принять. Если это не сработало, отредактируйте свой вопрос и укажите, что вам надоело, чтобы люди могли предложить другой подход.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.