如何在每次终端打开时执行脚本?

如何在每次终端打开时执行脚本?

我有一个包含欢迎消息的脚本,我想在每次打开终端时执行它。我该怎么做?这是脚本,我应该添加什么才能让脚本在每次打开终端时运行?

#!/bin/bash
echo "Welcome to Linux Command Line Interface... "
echo -en '\n'
echo -en '\n'
dateAndTime=$(date +'%Y-%m-%d_%H.%m')
echo "$dateAndTime"

答案1

对于我们这些菜鸟来说:)用简单的英语来说:

  1. 创建脚本并记下完整路径 (我发现最好将其添加到主目录中的 bin 文件夹中,这样您无需 ./ 即可运行脚本)
  2. 在 Nautilus 中打开主文件夹并启用显示隐藏文件
  3. 在文本编辑器中打开 .bashrc
  4. 将脚本的完整路径添加到 .bashrc 的末尾
  5. 保存并退出

答案2

脚本中的所有内容(shebang 行除外)都可以.bashrc在最后粘贴到文件中。以下是我的文件内容:

# Print "ubuntu" to terminal screen on startup
echo "            _                 _         "
echo "      _   _| |__  _   _ _ __ | |_ _   _ "
echo "     | | | | '_ \| | | | '_ \| __| | | |"
echo "     | |_| | |_) | |_| | | | | |_| |_| |"
echo "      \__,_|_.__/ \__,_|_| |_|\__|\__,_|"

答案3

这可以通过多种方式实现。

  1. 可能最简单的方法是在脚本末尾添加调用.bashrc,如注释中所述。但是,这将导致您的脚本不仅在终端启动时运行,而且在您登录文本控制台(例如,按 Ctrl+Alt+F4 即可访问)或通过 ssh 远程登录时运行。如果您不使用其中任何一种,或者在这些情况下运行脚本也是可以的,那么您无需寻找其他选项 :)。但是,如果您希望脚本运行仅有的当终端窗口打开且未在任何其他情况下打开时,您可以使用另外两个选项之一:

  2. bash -i您可以在脚本末尾添加该行,然后使用以下命令启动终端:(gnome-terminal -e /path/to/your/script您甚至可以编辑启动终端的菜单选项以包含此参数)

  3. 您可以bash -i在脚本末尾添加该行(如选项 2 所示),然后在终端中编辑默认配置文件。在“命令”选项卡上,选中“运行自定义命令而不是 shell”(确切的英文措辞可能有点不同,因为我使用的是非英语版本的 Ubuntu),然后在下面的“自定义命令”字段中输入脚本的路径。

这些是我马上想到的方法。可能还有更多……

答案4

将脚本保存在诸如 的目录中.dotfiles。然后编辑 shell 的配置文件(例如.bashrc.zshrc并添加. .dotfiles/file.sh。无论您的终端是什么,每次打开新 shell 时都会运行脚本。

相关内容