如何在登录时自动启动应用程序?
我如何在登录后自动启动应用程序?
14.04及更高版本
-
打开Dash并搜索“启动应用程序”
-
现在单击Add并输入命令以运行该应用程序。 如果已安装(见下文)或如此问题所示,可以在主菜单中找到。
使用主菜单( alacarte )
-
首先打开程序“主菜单”(在短划线中键入
Menu
) -
现在选择要添加到启动的程序,然后单击属性。
-
现在请注意该程序的命令。
非GUI方法
高级用户可能希望在用户登录后将.desktop文件放在~/.config/autostart
以运行应用程序。 这可能包含以下内容:
[Desktop Entry] Type=Application Name= Exec= Icon= Comment= X-GNOME-Autostart-enabled=true
对于11.04及更新版本,请参阅此处: 如何在登录时自动启动应用程序?
对于旧版本:如果要在启动时运行的程序位于“ 应用程序”菜单中,则可以将其拖放到“ 启动应用程序”窗口中以将其添加到列表中。
Unity和Xfce4都有GUI程序,允许您控制启动应用程序。
对于Unity:
对于Xfce4启动工具,可在设置>会话和启动中使用
图片由Xubuntu Geek xubuntugeek提供
如果GUI不是您想要的,并且您想要更高级的控制,那么您可以将.desktop
文件放在~/.config/autostart/
目录中用于Xfce4,并将.desktop
文件放在~/.config/autostart
中Unity用户登录后运行应用程序。
检查此问题以获得有关创建.desktop
文件的更多帮助:
- 如何手动编辑/创建Unity中的新启动器项目?
另请注意,如果您希望启动应用程序仅在XFCE中启动,而不是在Unity中启动,则必须将行OnlyShowIn=XFCE
放在.desktop
文件中。 对于仅Unity应用程序,它是OnlyShowIn=Unity
。
从Dash启动启动应用程序
单击“启动应用程序”
然后单击添加
键入程序的名称,浏览到该命令,然后单击“添加”。
另外 :这是我用来自动启动Guake的示例 – Yakuake的Gnome版本:
把它放在’命令’框中。
sh -c "sleep 120s; guake"
这会自动启动,但在此之前等待2分钟。 您可以将120更改为您想要的任何内容。
编辑:
对于14.04和16.04:
在Dash中键入Startup,然后在那里运行Startup Application表单
然后按照其余步骤进行操作。
(请注意,如果您使用其他语言的ubuntu,“startup”可能找不到正确的程序。请尝试使用您的语言的其他搜索)
您可能希望通过以下方式从CLI启动它:
$ gnome-session-properties
(以防万一你没有运行GNOME;))
您可以使用GNOME启动应用程序。
单击“添加”按钮,然后添加完整命令以打开所需的应用程序。 如果您不知道命令的路径,则可以执行此操作
name_of_commmand
看看$ XDG_CONFIG_DIRS / autostart目录:
$ echo $XDG_CONFIG_DIRS/autostart /etc/xdg/xdg-kde-plasma:/usr/share/upstart/xdg:/etc/xdg/autostart
其中说这个例子中有3个目录。 我想修剪nautilus条目
sudo rm /etc/xdg/autostart/nautilus-autostart.desktop
否则,如果您可以添加它,请创建一个桌面条目文件: sudo touch /etc/xdg/autostart/my-shell-autostart.desktop
添加以下内容:
[Desktop Entry] Name=foo Terminal=false Exec=/path/shell.sh Type=Application Icon=/path/icon.png Categories=Utility;
对于Ubuntu 12.04,
-
从右上角的菜单启动启动应用程序
-
在不单击Add的情况下,打开Dash并键入要在启动时运行的应用程序,例如Skype
-
将应用程序拖到“启动”应用程序窗口中。 如果Dash窗口太大而无法将应用程序拖到外面,请使用左上角的还原窗口按钮(如上图所示)。 最终列表如下所示:
还要将BATCH FILE放入启动应用程序以在用户登录后运行….在字段中启动应用程序的命令行键入命令:
gnome-terminal -e "/batch-path/batch-name.sh"
-
gnome-terminal
:用户登录后以当前用户权限打开终端 -
-e
:设置终端以执行批处理文件 -
/batch-path/batch-name.sh
:是批处理完整路径和全名
请记住,比文件批处理权限设置标志允许将文件作为程序执行为 ON 。
Ubuntu 13.10带有UNITY指令
要使用需要sudo
的命令来执行此操作有点棘手。
在我的情况下,我想使用命令sudo rmmod psmouse
禁用PSMOUSE驱动程序,以防止随机显示自身的鼠标点击问题。 有关此问题的详细信息,请参阅Linux中处理鼠标和触摸板冻结 。 我厌倦了每次开机都输入它。
在我的安装中, ~/.config
文件夹没有自动启动子文件夹,所以我创建了一个。 这样可以保存我的启动应用程序首选项设置。
要切换隐藏启动应用程序的可见性,可以使用以下命令。
向他们展示:
sudo sed -i 's/NoDisplay=true/NoDisplay=false/g' /etc/xdg/autostart/*.desktop
要隐藏它们:
sudo sed -i 's/NoDisplay=false/NoDisplay=true/g' /etc/xdg/autostart/*.desktop
按照“ 启动应用程序权限”窗口中的上述post配置命令。
Name: Fix Mouse Command: sudo rmmod psmouse Comment: Fix Mouse
然后你必须使用sudo visudo
编辑/ etc / sudoers文件。 添加包含以下信息的行:
username ALL=(ALL) NOPASSWD: /sbin/rmmod
您必须在以%admin开头的行下方输入此行。 我将我的行添加到文件的末尾。 使用sudo visudo
编辑此文件非常重要 ,因为犯错将导致您无法执行任何sudo
命令。 如果发生这种情况,请在恢复模式下启动并撤消编辑,然后尝试使用sudo visudo
。
注意 :
最初我尝试使用bash脚本间接运行我的命令,但这不起作用。 我不得不将sudo rmmod psmouse
直接放在Edit Startup Program窗口中。
您可以使用该function在系统/首选项/启动应用程序首选项窗口中记住当前正在运行的应用 程序 。 哪个(启用时)将“记住”您正在使用的所有程序,并在重新启动后或在一天内第一次启动系统时重新打开它们。
如果您没有足够的时间记录上次执行的操作,并且希望应用程序在上次运行时打开,那么这非常有用。
如果您希望从此function中删除应用程序,只需将其关闭并转到此function并按“记住当前正在运行的应用程序”,以刷新下次将打开的程序列表。
要以简单,便携的方式执行此操作,您可以使用Cron。 运行crontab -e
编辑用户的crontab; 添加@reboot command
以在每次启动时运行command
。
在Unity Dash中键入“启动应用程序”,它会列出您可以单击打开的应用程序。 打开它之后,您可以在那里添加您的应用程序。
Alt + F2 ,然后是gnome-help ghelp:user-guide?gosstartsession-2
。
单击“运行” ,等待一秒钟,然后按照说明进行操作。