通过 Unity 上的按钮运行典型的 sudo 命令

通过 Unity 上的按钮运行典型的 sudo 命令

我倾向于打开终端会话来运行 Sudo 命令,并希望制作出更有用的东西作为应用程序。

使用来自各种在线来源的一些信息https://help.ubuntu.com/community/UnityLaunchersAndDesktopFiles 我想出了我的小型桌面应用程序。

应用程序右键单击

首先安装桌面快捷方式

sudo apt-get install --no-install-recommends gnome-panel 

然后运行

gnome-desktop-item-edit --create-new ~/Desktop

创建一个基本的启动器桌面快捷方式。

基本启动器

现在创建一个名为 StayOpen 的新终端配置文件

打开终端,选择文件 - 新配置文件,新建,将新配置文件命名为“StayOpen”。然后在属性下选择标题和命令选项卡。在此选项卡的底部选择命令退出时 - 保持终端打开

保持终端打开

一旦创建了默认桌面文件,您就需要编辑它。示例如下:

gedit <Your File name>

例子:

我的以下桌面文件脚本名为“Sudo Run”。如果您复制/粘贴以下脚本,则需要使用以下文件来解决这个问题,否则它将无法正常运行。

[Desktop Entry]
Version=1.0
Type=Application
Name=Sudo Run
Icon=gdm-xnest.png
Exec=gnome-terminal
Terminal=false
Actions=Terminal;TerminalRoot;Files;TextEdit;Update

[Desktop Action Terminal]
Name=Terminal
Exec=gnome-terminal --window-with-profile=StayOpen
OnlyShowIn=Unity;

[Desktop Action TerminalRoot]
Name=Terminal Root
Exec=gnome-terminal --window-with-profile=StayOpen -x bash -l -c "sudo su;bash"
OnlyShowIn=Unity;

[Desktop Action Files]
Name=Sudo Files
Exec=gnome-terminal --window-with-profile=StayOpen --geometry=40x2+1+1 -x bash -l -c "sudo nautilus;bash"
OnlyShowIn=Unity;

[Desktop Action TextEdit]
Name=Sudo Text Edit
Exec=gnome-terminal --window-with-profile=StayOpen --geometry=40x2+1+1 -x bash -l -c "sudo gedit;bash"
OnlyShowIn=Unity;

[Desktop Action Update]
Name=Sudo Apt-Get Update
Exec=gnome-terminal --window-with-profile=StayOpen -x bash -l -c "sudo apt-get update && sudo apt-get upgrade;bash"
OnlyShowIn=Unity;

一旦完成,将文件移动到应用程序文件夹,就可以将其视为应用程序。

sudo nautilus

将文件移动到usr/share/applications

然后根据需要将其拖放到 Unity 启动器。这就是 Bash 脚本发挥作用的地方。

一旦桌面链接位于 Unity 启动器上,您将有多个右键单击选项,如下面“操作”中列出的一样。请注意文件底部的相应操作。几个 bash 脚本会打开一个小的终端窗口,该窗口刚好足够大,可以输入您的 sudo 密码。根据您的喜好修改“geometry=”或根据需要删除。输入密码后,您的应用程序就可以运行了,等等。

您可以更改操作以按您的偏好排序,并将默认的“Exec=”设置为您的左键单击偏好

作为 Unity 启动器上的快捷方式,它的一大特色是右键单击“退出”功能,它将关闭所有打开的窗口。

-mb:进行了编辑以提高可读性

答案1

您可以使用选项更改图标Icon。我想您已经知道这一点,但我注意到您仅在第一个条目上声明了它。此外,它在那里声明了两次,这可能会发生冲突。删除其中一个,看看它是否有效。

此外,您的图标是作为相对路径给出的。我不知道 Unity 在哪个文件夹中寻找图标,但您必须将文件复制到那里或使用绝对路径(例如Icon=/home/myuser/myicon.png)。

相关内容