如何在登录 Ubuntu 时自动执行 shell 脚本

如何在登录 Ubuntu 时自动执行 shell 脚本

如何让脚本在我登录时自动执行?不是在机器启动时,也不是对所有用户都执行,而是在我(或任何使用该脚本的特定用户)通过 GNOME UI 登录时才执行。

从其他地方读到的,我以为它.bash_profile在我的主目录中,但对我来说它没有效果。当我在终端窗口中手动输入它时,~/.bash_profile它可以工作,但它不会在我登录时自动运行。

我正在运行 Ubuntu 11.04。我的 .bash_profile 上的文件权限是-rwx------。在我今天创建它之前,我的主目录中不存在 .bash_profile。

我似乎记得旧版本的 Linux.profile为每个用户都有一个文件,但这也不起作用。

如何完成?我是否需要配置其他内容才能使 .bash_profile 正常工作?或者每个用户的登录脚本是否需要放在其他文件中?

答案1

您只需将以下命令添加到系统>首选项>启动应用程序中即可:

bash /full/path/to/your/script.sh

这应该够了吧 ;)

答案2

基本上,無誤建议创建一个桌面启动器:~/.config/自动启动/script.desktop内容如下:

[Desktop Entry]
Type=Application
Name=Autostart Script
Exec=autostart
Icon=system-run
X-GNOME-Autostart-enabled=true

然后创建自动启动脚本:〜/ bin /自动启动使用你的 bash 内容:

#!/bin/bash
# Execute bash script below

确保〜/ bin /自动启动是可执行的

答案3

您可以在 crontab 中添加一行 -

crontab -e

然后将这一行添加到打开的文件中:

@reboot /path/to/your/cool/script

这将在重启时运行脚本。有关更多详细信息,请参阅man crontab

答案4

扩展@JuanSebastianTotero 回答

代替:

bash /full/path/to/your/script.sh

尝试

sh /full/path/to/your/script.sh

bash13.04在 Ubuntu和 上对我来说不起作用14.04。但是sh可以。

相关内容