如何定期更新MOTD?

l0b*_*0b0 1 cron motd

每周都会有一个新的工作日志/待办事项列表。有一个todo脚本可用于从中提取我自己的待办事项。目前这被称为 in ~/.bash_aliases_local,它来自~/.bash_aliases. 我不想在每次启动另一个 shell 时解析日志,而是想使用标准的 MOTD(每日消息)功能。这将涉及每周使用待办事项列表更新静态文件:

@weekly update-motd
Run Code Online (Sandbox Code Playgroud)

每次启动交互式 Bash shell 时都应打印生成的静态文本文件。执行此操作的标准方法是什么?

roz*_*acz 5

如果您希望每次打开新终端(在 X 会话下)时都显示该消息,那么motd这不是正确的地方。它由login程序执行- 当您登录真实tty(或ssh例如通过)时会发生这种情况。

对于终端会话,我相信唯一通用的方法是cat somefile在 shell 启动文件的末尾运行:个人(即~/.bashrc ~/.zshrc等)或全局(在/etc- 请参阅您的 shell 的联机帮助页了解详细信息)。通常,在终端模拟器会话的情况下,恐怕没有“标准”的方法可以做到这一点。

  • @Rush `.bash_login` 仅当 bash 是登录 shell 时才读取(即使大多数人使用 `.bash_profile` 代替)。这在这里没有帮助,因为问题是关于所有交互式 shell 的。`.bashrc` 正是用于此目的的正确文件。 (4认同)