我如何配置牛赛?

Fah*_*med 20 command-line fortune

我已经安装cowsayfortune. 我想在cowsay. 但我无法配置它。当我打开终端时,没有任何来自cowsay. 我想cowsay在启动终端时显示。

但这有效:

hash@ssl50:~$ cowsay -f tux "Carry on"

< carry on >
----------
   \
    \
        .--.
       |o_o |
       |:_/ |
      //   \ \
     (|     | )
    /'\_   _/`\
    \___)=(___/
Run Code Online (Sandbox Code Playgroud)

小智 15

cowsay 带有随机文件的命令行:

fortune | cowsay -f `ls /usr/share/cowsay/cows/ | shuf -n 1`
Run Code Online (Sandbox Code Playgroud)

结果:

     ___________________________________
/ Q: Who cuts the grass on Walton's \
\ Mountain? A: Lawn Boy.            /
 -----------------------------------
  \
   \ ,   _ ___.--'''`--''//-,-_--_.
      \`"' ` || \\ \ \\/ / // / ,-\\`,_
     /'`  \ \ || Y  | \|/ / // / - |__ `-,
    /@"\  ` \ `\ |  | ||/ // | \/  \  `-._`-,_.,
   /  _.-. `.-\,___/\ _/|_/_\_\/|_/ |     `-._._)
   `-'``/  /  |  // \__/\__  /  \__/ \
        `-'  /-\/  | -|   \__ \   |-' |
          __/\ / _/ \/ __,-'   ) ,' _|'
         (((__/(((_.' ((___..-'((__,'
Run Code Online (Sandbox Code Playgroud)

您可以将此命令行添加到登录配置文件脚本的末尾,以便cowsay在任何终端中查看随机情况。对于bash,您需要将此行放入~/.bashrc.


为了让它也随机选择cowsaycowthink,你可以这样做:

fortune | `ls /usr/games/cow* | shuf -n 1` -f `ls /usr/share/cowsay/cows/ | shuf -n 1`
Run Code Online (Sandbox Code Playgroud)

这允许有一个带有随机文件的单行解决方案,而不是煞费苦心地扩展 Linux Mint 脚本


小智 14

好吧,在 Linux Mint 中,您可以做一件有趣的事情:编写一个脚本来选择一头牛并显示来自Fortune的消息。稍后我会谈到它。一旦你有了脚本,你所要做的就是执行它。如前所述,编辑您的 ~/.bashrc 文件并在最后添加一行包含脚本路径的行。例如,如果您的主文件夹中有脚本并且脚本的文件名为“cowscript”,那么您可以在 ~/.bashrc 文件的末尾添加以下行:

$HOME/cowscript
Run Code Online (Sandbox Code Playgroud)

现在,Linux Mint 9 中使用的脚本如下:

#!/bin/bash
RANGE=4

number=$RANDOM
let "number %= $RANGE"
case $number in
    0)
        cow="small"
        ;;
    1)
        cow="tux"
        ;;
    2)
        cow="koala"
        ;;
    3)
        cow="moose"
        ;;
esac

RANGE=2
number=$RANDOM
let "number %= $RANGE"
case $number in
    0)
        command="/usr/games/cowsay"
        ;;
    1)
        command="/usr/games/cowthink"
        ;;
esac
/usr/games/fortune | $command -f $cow
Run Code Online (Sandbox Code Playgroud)

基本上,它会随机显示一头母牛(smalltuxkoalamoose),并且消息将来自财富。此外,这个脚本将执行 wither cowsaycowthink,唯一的区别是cowthink将显示一头会思考的牛而不是一头会说话的牛。

现在,有趣的是您可以修改脚本以显示更多的奶牛或显示不同的奶牛。为此,您首先需要知道您安装了哪些奶牛。在终端中,运行:

cowsay -l
Run Code Online (Sandbox Code Playgroud)

您可以使用任何这些奶牛。您所要做的就是编辑脚本:如果您想添加一头新牛,只需复制包含“cow”(加上数字和分号)的行并将它们粘贴到“esac”行之前。然后,更改奶牛的编号和名称,例如,如果您想添加一头名为“udder”的奶牛,您只需在第一个“esac”之前添加以下几行:

4)
    cow="udder"
    ;;
Run Code Online (Sandbox Code Playgroud)

重要提示:文件的第二行“RANGE=4”也必须更改。如果添加一头牛,则使用 5 代替 4,如果删除一头牛,则必须使用 3,以此类推。另请注意,您看到的数字必须在 0 到RANGE-1的范围内。这就是为什么 RANGE 是 4 并且数字是 0、1、2 和 3。

您也可以创建自己的奶牛,尽管这可能需要更多的工作。您所要做的就是获取您喜欢的任何 ASCII 艺术并对其进行编辑,但这有点棘手。您可以在这里看到它是如何完成的:http : //lmpeiris.wordpress.com/2011/01/17/cowsayhow-to-make-a-cow-talk-on-terminal-startup/但是,请考虑任何@\符号需要反斜杠,也就是说,您必须在该符号之前放置另一个符号:\#也可能是这种情况(但并非总是如此)。如果您的 ASCII 艺术包含#,你也可以反斜杠,但有时只用其中一个就足够了......我不知道如何解释,抱歉。我想你将不得不尝试看看它是否有效。另外,请确保您编辑的文件具有扩展名“.cow”

最后,一旦你有了自己的奶牛,你可以将它们添加到 /usr/share/cowsay/cows 的默认位置(你可能需要成为超级用户),或者你可以添加到你的 ~/.bashrc 文件这行:

export COWPATH="/usr/share/cowsay/cows"
# set COWPATH so it includes user's cows
if [ -d "$HOME/cowfiles" ] ; then
    COWPATH="$COWPATH:$HOME/cowfiles"
fi
Run Code Online (Sandbox Code Playgroud)

在调用“cowscript”之前,请务必添加这些行。这还假设您的主文件夹中有一个名为“cowfiles”的文件夹。如果需要,请更改路径,使其指向您拥有 cowfile 的文件夹。


tom*_*chi 11

如果要在每次启动终端时组合cowsayfortune显示一条消息,请添加以下行:

fortune | cowsay -f tux
Run Code Online (Sandbox Code Playgroud)

.bashrc您的主文件夹中的文件。