我正在尝试在 Ubuntu 11.10 Linux 发行版中编写 bash shell 脚本,该脚本将在登录系统时自动执行。但我无法弄清楚在脚本中写什么,它会在登录时自动执行。
答案1
如果你想让它是全局的,修改
/etc/profile
或添加一个脚本
/etc/profile.d
如果您希望它是特定于用户的,请修改
~/.profile
答案2
/etc/profile
或$HOME/.profile
或$HOME/.bash_profile
/etc/profile.d/yourscript.sh
如果它产生输出,我强烈建议不要使用它。当您使用非交互式会话时,您将收到一条$TERM is not set
消息。当使用 ssh 协议(如 scp)时,这一点很明显。通常没什么大不了的,但是,Veeam 不喜欢它并且会发出警告。我知道 Veeam 不是这里的主题,但值得一提的是,并非所有应用程序都会优雅地忽略该$TERM is not set
警告。
简而言之,如果脚本生成输出,请将其放置在第一行指定的位置。但是,如果您正在修改环境并且脚本不生成输出,则使用后者。
答案3
如果您想更具体地了解 bash,您还可以在 ~/.bash_profile 或 ~/.bash_login 中编写代码。
您可以在其中获取任何脚本,例如:
if [ -f ~/.bashrc ]; then
source ~/.bashrc
fi
答案4
要在 Ubuntu 11.10 中登录时执行 shell 脚本,您可以将脚本添加到 ~/.bashrc 文件中。每次登录 shell 启动时都会执行此文件,因此每当您登录系统时,都会运行此处添加的任何命令或脚本。要将脚本添加到 ~/.bashrc,请打开终端并通过键入以下内容导航到主目录:cd ~/
接下来,使用以下命令在文本编辑器中打开 .bashrc 文件:nano .bashrc
打开文件后,导航到末尾文件并添加以下行:/path/to/your/script.sh
确保将“/path/to/your/script.sh”替换为脚本的实际路径。另外,请通过运行以下命令确保您的脚本可执行:chmod +x /path/to/your/script.sh
保存并关闭文件,下次登录时,您的脚本应该会自动执行。请让我知道这对你有没有用!