脚本快捷方式以 sudo 身份在 gedit 中打开两个文件

脚本快捷方式以 sudo 身份在 gedit 中打开两个文件

我想双击桌面上的一个文件,并以 sudo 身份在 gedit 中打开两个文件。

每当我创建一个新网站时,我都需要打开

/etc/hosts /etc/apache2/sites-enabled/000-default.conf

作为 sudo。

目前,这意味着打开终端,运行 sudo gedit,然后手动打开每个文件。我想简化工作流程的这一部分。在 Windows 上,我编写了一个运行良好的小 bash 脚本。我如何在 ubuntu 中做同样的事情?

到目前为止,我在搜索中遇到了向文件浏览器添加快捷方式的方法以及类似的东西,但并不是我想要的。

我曾尝试创建一个桌面启动器,但不知道如何让它以 sudo 身份运行。

答案1

要通过 GUI 输入密码,您需要gksu安装:

sudo apt-get install gksu

然后:

  1. 在 Gedit 中创建一个新的文本文档,然后将其复制粘贴到其中:

    #!/bin/bash
    
    gedit /etc/hosts
    gedit /etc/apache2/sites-enabled/000-default.conf
    

    将文件另存为filename.sh

    这是一个按顺序运行命令的 shell 脚本(关闭第一个文件后将打开第二个文件)。如果您希望同时打开两个文件,则命令应如下:

    gedit /etc/hosts&gedit /etc/apache2/sites-enabled/000-default.conf
    
  2. 使文件可执行:右键单击该文件,选择properties > permissions并勾选allow executing file as program。或者,您可以运行:

    chmod +x /path/to/yourscript.sh

  3. 打开一个新的 gedit 窗口并粘贴以下内容:

    [Desktop Entry]
    Type=Application
    Name=Name you like
    Exec=gksu /path/to/your/script.sh
    Terminal=false
    Icon=/path/to/some/iconfile
    

    将其另存为filename.desktop,并使其可执行(如果您从桌面运行它)。当您双击桌面文件时,它将运行 .sh 脚本,要求您输入密码并打开文件进行编辑。

有关其他 .desktop 功能,请访问此处关联

相关内容