如何从命令行向启动应用程序添加脚本?

匿名鸭嘴兽

我有一个shell脚本。我想将脚本配置为在启动期间自动运行。我知道如何从GUI执行此操作。但是我想从终端执行此操作。我怎样才能做到这一点?

在初步研究中,我发现该文件需要移动到/etc/int.d/目录中。但是此操作需要sudo权限。我想在没有超级用户权限的情况下执行此操作。

我还发现有些文件~/.config/autostart/具有有关启动应用程序的设置。但是我不知道如何编辑它们来实现这一目标。

有人可以告诉我实现这一目标的确切程序吗?

雅各布·弗利姆

如何从命令行设置启动启动器

就像您在问题中提到的那样,可以通过将启动器放在中来在登录时运行命令。~/.config/autostart由于启动器仅用于启动脚本,因此在创建的.desktop文件中只需要“基本”桌面条目关键字:至少需要:

[Desktop Entry]
Name=name
Exec=command
Type=Application

X-GNOME-Autostart-enabled=true如果启用/禁用启动器的自动启动功能,则(可选)行将自动添加(X-GNOME-Autostart-enabled=true默认设置为

有关必填字段的更多信息,请参见此处

示例脚本

要从命令行创建此类启动器,您将需要一个小脚本,该脚本将使用启动器的名称和命令作为参数运行。下面是此类脚本的示例。

如果我使用命令运行它:

python3 '/path/to/script' 'Test' 'gedit'

它创建一个启动启动器,gedit在我登录时运行
启动器在“ Dash”>“启动应用程序”中也可见:

在此处输入图片说明

剧本

#!/usr/bin/env python3
import os
import sys
home = os.environ["HOME"]

name = sys.argv[1]; command = sys.argv[2]

launcher = ["[Desktop Entry]", "Name=", "Exec=", "Type=Application", "X-GNOME-Autostart-enabled=true"]
dr = home+"/.config/autostart/"
if not os.path.exists(dr):
    os.makedirs(dr)
file = dr+name.lower()+".desktop"

if not os.path.exists(file):
    with open(file, "wt") as out:     
        for l in launcher:
            l = l+name if l == "Name=" else l
            l = l+command if l == "Exec=" else l
            out.write(l+"\n")
else:
    print("file exists, choose another name")

将其粘贴到一个空文件中,另存为set_startupscript.py,然后通过以下命令运行它:

python3 /path/to/set_startupscript.py '<name>' '<command>'

它能做什么

  • 它在中创建一个基本的启动器(您不需要更多的运行脚本)~/.config/autostart,并使用名称和命令作为参数。
  • 如果名称为的启动器已存在于中~/.config/autostart,它会显示一条消息:

    file exists, choose another name
    

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何从命令行向Unity Launcher添加/删除应用程序?

来自分类Dev

如何从命令行学习将在Unity的“系统设置”中启动应用程序的命令?

来自分类Dev

如何从命令行学习将在Unity的“系统设置”中启动应用程序的命令?

来自分类Dev

如何从命令行在特定桌面上启动应用程序?

来自分类Dev

如何从命令行重新启动IIS应用程序池?

来自分类Dev

如何从命令行启动Google Crome应用程序?

来自分类Dev

如何从命令行构建Xamarin.Mac应用程序或构建脚本

来自分类Dev

如何从命令行停止Mule应用程序?

来自分类Dev

如何从命令行查找应用程序的路径?

来自分类Dev

向Winforms应用程序添加命令行支持

来自分类Dev

无法从命令行启动空的OTP应用程序

来自分类Dev

我可以从命令行启动/停止特定的Web应用程序吗?

来自分类Dev

从命令行从启动器解锁应用程序

来自分类Dev

从命令行将应用程序添加到收藏夹

来自分类Dev

从命令行调用Wine安装的应用程序

来自分类Dev

如何从命令行向表添加描述?

来自分类Dev

如何从命令行打开Windows应用商店应用程序?

来自分类Dev

如何从命令行加载并启动Google Chrome应用?

来自分类Dev

如何从命令行启动该程序?

来自分类Dev

从命令行启动Chrome应用

来自分类Dev

如何从命令行从iOS 8 Simulator中删除应用程序?

来自分类Dev

如何从命令行使用默认应用程序打开文件?

来自分类Dev

如何从命令行运行GUI应用程序?

来自分类Dev

如何从命令行为快捷应用程序运行XCTest?

来自分类Dev

如何从命令行将应用程序侧面加载到Windows 8.1平板电脑

来自分类Dev

如何从命令行在Samsung Tizen TV上安装应用程序

来自分类Dev

如何从命令行调用嵌入式jre以便运行Java应用程序

来自分类Dev

如何部署从命令行运行的Javascript应用程序?

来自分类Dev

如何从命令行使用默认应用程序打开文件?

Related 相关文章

  1. 1

    如何从命令行向Unity Launcher添加/删除应用程序?

  2. 2

    如何从命令行学习将在Unity的“系统设置”中启动应用程序的命令?

  3. 3

    如何从命令行学习将在Unity的“系统设置”中启动应用程序的命令?

  4. 4

    如何从命令行在特定桌面上启动应用程序?

  5. 5

    如何从命令行重新启动IIS应用程序池?

  6. 6

    如何从命令行启动Google Crome应用程序?

  7. 7

    如何从命令行构建Xamarin.Mac应用程序或构建脚本

  8. 8

    如何从命令行停止Mule应用程序?

  9. 9

    如何从命令行查找应用程序的路径?

  10. 10

    向Winforms应用程序添加命令行支持

  11. 11

    无法从命令行启动空的OTP应用程序

  12. 12

    我可以从命令行启动/停止特定的Web应用程序吗?

  13. 13

    从命令行从启动器解锁应用程序

  14. 14

    从命令行将应用程序添加到收藏夹

  15. 15

    从命令行调用Wine安装的应用程序

  16. 16

    如何从命令行向表添加描述?

  17. 17

    如何从命令行打开Windows应用商店应用程序?

  18. 18

    如何从命令行加载并启动Google Chrome应用?

  19. 19

    如何从命令行启动该程序?

  20. 20

    从命令行启动Chrome应用

  21. 21

    如何从命令行从iOS 8 Simulator中删除应用程序?

  22. 22

    如何从命令行使用默认应用程序打开文件?

  23. 23

    如何从命令行运行GUI应用程序?

  24. 24

    如何从命令行为快捷应用程序运行XCTest?

  25. 25

    如何从命令行将应用程序侧面加载到Windows 8.1平板电脑

  26. 26

    如何从命令行在Samsung Tizen TV上安装应用程序

  27. 27

    如何从命令行调用嵌入式jre以便运行Java应用程序

  28. 28

    如何部署从命令行运行的Javascript应用程序?

  29. 29

    如何从命令行使用默认应用程序打开文件?

热门标签

归档