2018-12-05 12:55:59 +08:00
|
|
|
|
[#]: collector: (lujun9972)
|
2018-12-06 16:24:52 +08:00
|
|
|
|
[#]: translator: (heguangzhi)
|
2018-12-14 13:28:27 +08:00
|
|
|
|
[#]: reviewer: (wxy)
|
2018-12-14 13:29:20 +08:00
|
|
|
|
[#]: publisher: (wxy)
|
2018-12-05 12:55:59 +08:00
|
|
|
|
[#]: subject: (Have a cow at the Linux command line)
|
|
|
|
|
[#]: via: (https://opensource.com/article/18/12/linux-toy-cowsay)
|
|
|
|
|
[#]: author: (Jason Baker https://opensource.com/users/jason-baker)
|
2018-12-14 13:29:20 +08:00
|
|
|
|
[#]: url: (https://linux.cn/article-10346-1.html)
|
2018-12-05 12:55:59 +08:00
|
|
|
|
|
2018-12-11 17:02:12 +08:00
|
|
|
|
|
2018-12-14 13:28:27 +08:00
|
|
|
|
在 Linux 命令行上拥有一头奶牛
|
2018-12-05 12:55:59 +08:00
|
|
|
|
======
|
2018-12-11 17:02:12 +08:00
|
|
|
|
|
2018-12-14 13:28:27 +08:00
|
|
|
|
> 使用 cowsay 实用程序将牛的话语带到你的终端输出。
|
2018-12-11 17:02:12 +08:00
|
|
|
|
|
2018-12-05 12:55:59 +08:00
|
|
|
|
![](https://opensource.com/sites/default/files/styles/image-full-size/public/uploads/linux-toy-cowsay.png?itok=RA4NDbrY)
|
|
|
|
|
|
2018-12-11 17:02:12 +08:00
|
|
|
|
欢迎来到 Linux 命令行玩具第四天。如果这是你第一次访问这个系列,你可能会问自己,什么是命令行玩具。我们也在考虑这一点,但是一般来说,这可能是一个游戏,或者任何简单的娱乐,可以帮助你在终端玩得开心。
|
2018-12-05 12:55:59 +08:00
|
|
|
|
|
2018-12-14 13:28:27 +08:00
|
|
|
|
你们中的一些人会见过我们之前的选中的各种玩具,但是我们希望至少有一个对每个人来说都是新的。因为几乎所有我告诉他这个系列的人都已经问过它了,所以今天的选中的玩具是必须提及的。
|
2018-12-05 12:55:59 +08:00
|
|
|
|
|
2018-12-14 13:28:27 +08:00
|
|
|
|
你也不会认为我们会在不提及 `cowsay` 的情况下完成这个系列,对吧?
|
2018-12-05 12:55:59 +08:00
|
|
|
|
|
2018-12-14 13:28:27 +08:00
|
|
|
|
`cowsay` 是一个神奇的实用程序,它将文本作为 ASCII 艺术牛的讲话文本输出。
|
2018-12-05 12:55:59 +08:00
|
|
|
|
|
2018-12-16 11:03:15 +08:00
|
|
|
|
你可能会发现 `cowsay` 打包在你的默认存储库中,甚至可能已经安装了。对我来说,在 Fedora,像这样安装:
|
2018-12-05 12:55:59 +08:00
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
$ sudo dnf install -y cowsay
|
|
|
|
|
```
|
2018-12-14 13:28:27 +08:00
|
|
|
|
|
2018-12-16 11:03:15 +08:00
|
|
|
|
然后,用 `cowsay` 调用它,然后是你的消息。也许你想到昨天我们谈到的 [fortune 应用][1] 连接起来。
|
2018-12-05 12:55:59 +08:00
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
$ fortune | cowsay
|
|
|
|
|
_________________________________________
|
|
|
|
|
/ If at first you do succeed, try to hide \
|
|
|
|
|
\ your astonishment. /
|
|
|
|
|
-----------------------------------------
|
|
|
|
|
\ ^__^
|
|
|
|
|
\ (oo)\_______
|
|
|
|
|
(__)\ )\/\
|
|
|
|
|
||----w |
|
|
|
|
|
|| ||
|
|
|
|
|
```
|
|
|
|
|
|
2018-12-14 13:28:27 +08:00
|
|
|
|
就这样!`cowsay` 还有点小变体,称为 cow 文件,通常可以在 `/usr/share/cowsay` 找到 ,要查看系统上可用的 cow 文件,请在 `cowsay` 之后使用 `-l` 。然后,用 `-f` 试试其中之一。
|
2018-12-05 12:55:59 +08:00
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
$ cowsay -f dragon "Run for cover, I feel a sneeze coming on."
|
|
|
|
|
_______________________________________
|
|
|
|
|
/ Run for cover, I feel a sneeze coming \
|
|
|
|
|
\ on. /
|
|
|
|
|
---------------------------------------
|
|
|
|
|
\ / \ //\
|
|
|
|
|
\ |\___/| / \// \\
|
|
|
|
|
/0 0 \__ / // | \ \
|
|
|
|
|
/ / \/_/ // | \ \
|
|
|
|
|
@_^_@'/ \/_ // | \ \
|
|
|
|
|
//_^_/ \/_ // | \ \
|
|
|
|
|
( //) | \/// | \ \
|
|
|
|
|
( / /) _|_ / ) // | \ _\
|
|
|
|
|
( // /) '/,_ _ _/ ( ; -. | _ _\.-~ .-~~~^-.
|
|
|
|
|
(( / / )) ,-{ _ `-.|.-~-. .~ `.
|
|
|
|
|
(( // / )) '/\ / ~-. _ .-~ .-~^-. \
|
|
|
|
|
(( /// )) `. { } / \ \
|
|
|
|
|
(( / )) .----~-.\ \-' .~ \ `. \^-.
|
|
|
|
|
///.----..> \ _ -~ `. ^-` ^-_
|
|
|
|
|
///-._ _ _ _ _ _ _}^ - - - - ~ ~-- ,.-~
|
|
|
|
|
/.-~
|
|
|
|
|
```
|
|
|
|
|
|
2018-12-14 13:28:27 +08:00
|
|
|
|
我对 `cowsay` 的真正不满是,我今天没有足够的时间来为牛的挤奶 —— 一语双关。牛排价格太高了,我只是开个玩笑。
|
2018-12-05 12:55:59 +08:00
|
|
|
|
|
2018-12-16 11:03:15 +08:00
|
|
|
|
更严重的是,我已经完全忘记了 `cowsay` 直到我在学习 Ansible 的剧本时再次遇到它。如果你碰巧安装了 `cowsay`,当你运行 Ansible 的剧本时,你会从一队奶牛那里获得输出。例如,运行这个剧本:
|
2018-12-05 12:55:59 +08:00
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
- hosts:
|
|
|
|
|
- localhost
|
|
|
|
|
tasks:
|
|
|
|
|
- action: ping
|
|
|
|
|
```
|
2018-12-14 13:28:27 +08:00
|
|
|
|
|
|
|
|
|
可能会给你以下信息:
|
2018-12-05 12:55:59 +08:00
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
$ ansible-playbook playbook.yml
|
|
|
|
|
__________________
|
|
|
|
|
< PLAY [localhost] >
|
|
|
|
|
------------------
|
|
|
|
|
\ ^__^
|
|
|
|
|
\ (oo)\_______
|
|
|
|
|
(__)\ )\/\
|
|
|
|
|
||----w |
|
|
|
|
|
|| ||
|
|
|
|
|
|
|
|
|
|
________________________
|
|
|
|
|
< TASK [Gathering Facts] >
|
|
|
|
|
------------------------
|
|
|
|
|
\ ^__^
|
|
|
|
|
\ (oo)\_______
|
|
|
|
|
(__)\ )\/\
|
|
|
|
|
||----w |
|
|
|
|
|
|| ||
|
|
|
|
|
|
|
|
|
|
ok: [localhost]
|
|
|
|
|
_____________
|
|
|
|
|
< TASK [ping] >
|
|
|
|
|
-------------
|
|
|
|
|
\ ^__^
|
|
|
|
|
\ (oo)\_______
|
|
|
|
|
(__)\ )\/\
|
|
|
|
|
||----w |
|
|
|
|
|
|| ||
|
|
|
|
|
|
|
|
|
|
ok: [localhost]
|
|
|
|
|
____________
|
|
|
|
|
< PLAY RECAP >
|
|
|
|
|
------------
|
|
|
|
|
\ ^__^
|
|
|
|
|
\ (oo)\_______
|
|
|
|
|
(__)\ )\/\
|
|
|
|
|
||----w |
|
|
|
|
|
|| ||
|
|
|
|
|
|
|
|
|
|
localhost : ok=2 changed=0 unreachable=0 failed=0
|
|
|
|
|
```
|
|
|
|
|
|
2018-12-14 13:28:27 +08:00
|
|
|
|
`cowsay` 在 GPLv3 许可证下可用,您可以在 GitHub 上找到 它的 Perl [源代码][2]。我也见过其他语言的版本,所以可以看看其他变体;例如,这是 [R 语言版][3]。用你选择的语言实现你自己的版本可能是一项有趣的编程学习任务。
|
|
|
|
|
|
|
|
|
|
既然讲完了 `cowsay`,我们可以去更绿色的牧场了。
|
2018-12-05 12:55:59 +08:00
|
|
|
|
|
2018-12-14 13:28:27 +08:00
|
|
|
|
你有希望我来介绍的喜欢的命令行玩具吗?这个系列的排期大部分都填好了,但我还有一些空位方。在下面的评论中让我知道,我会来看看。如果有空间,我会尝试把它包括进去。如果没有,但是我收到了一些好的意见,我在结尾提及。
|
2018-12-05 12:55:59 +08:00
|
|
|
|
|
2018-12-14 13:28:27 +08:00
|
|
|
|
看看昨天的玩具,[如何给你的 Linux 终端带来好运][1],明天再来看看另一个!
|
2018-12-05 12:55:59 +08:00
|
|
|
|
|
|
|
|
|
--------------------------------------------------------------------------------
|
|
|
|
|
|
|
|
|
|
via: https://opensource.com/article/18/12/linux-toy-cowsay
|
|
|
|
|
|
|
|
|
|
作者:[Jason Baker][a]
|
|
|
|
|
选题:[lujun9972][b]
|
2018-12-11 17:02:12 +08:00
|
|
|
|
译者:[heguangzhi](https://github.com/heguangzhi)
|
2018-12-14 13:28:27 +08:00
|
|
|
|
校对:[wxy](https://github.com/wxy)
|
2018-12-05 12:55:59 +08:00
|
|
|
|
|
|
|
|
|
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
|
|
|
|
|
|
|
|
|
[a]: https://opensource.com/users/jason-baker
|
|
|
|
|
[b]: https://github.com/lujun9972
|
|
|
|
|
[1]: https://opensource.com/article/18/12/linux-toy-fortune
|
|
|
|
|
[2]: https://github.com/tnalpgge/rank-amateur-cowsay
|
|
|
|
|
[3]: https://github.com/sckott/cowsay
|