在每个新的终端会话中都显示“牛人”的财富

the*_*cer 37 bash scripts user-profile fortune

我希望cowsay在每个终端窗口中显示一条消息。我使用的命令是

 fortune | cowsay
Run Code Online (Sandbox Code Playgroud)

有什么想法可以在我开始新的终端会话时让它出现吗?

hto*_*que 47

  • 打开文件~/.bashrc(或者/etc/bash.bashrc它是否应该对所有用户全局有效)。

  • 在文件底部添加以下内容:

    if [ -x /usr/games/cowsay -a -x /usr/games/fortune ]; then
        fortune | cowsay
    fi
    
    Run Code Online (Sandbox Code Playgroud)

  • 是的,“-x”测试该文件是否存在并且是可执行的。有关 `test` 程序的更多信息,请参见其手册页:`man test`(`[ ... ]` 是 `test ...` 的缩写)。 (3认同)

小智 8

奖励:如果您正在使用,bash您可以创建一个~/.bash_logout文件,并在您注销时执行该文件。确保让它休眠一秒钟左右,否则您将永远看不到它。

cowsay "See you later"; sleep 1


小智 7

我会考虑对请求的财富命令的大小设置限制。

fortune -s | cowsay
Run Code Online (Sandbox Code Playgroud)

这将产生最多 160 个字符。这是一个很好的问候语尺寸,除此之外的任何事情都会让你的终端充满希望。