Jason Baker 发布的文章

你的 Linux 终端可能支持 Unicode,那么为何不利用它在提示符中添加季节性的图标呢?

欢迎再次来到 Linux 命令行玩具日历的另一篇。如果这是你第一次访问该系列,你甚至可能会问自己什么是命令行玩具?我们对此比较随意:它会是终端上有任何有趣的消遣,对于任何节日主题相关的还有额外的加分。

也许你以前见过其中的一些,也许你没有。不管怎样,我们希望你玩得开心。

今天的玩具非常简单:它是你的 Bash 提示符。你的 Bash 提示符?是的!我们还有几个星期的假期可以盯着它看,在北半球冬天还会再多几周,所以为什么不玩玩它。

目前你的 Bash 提示符号可能是一个简单的美元符号( $),或者更有可能是一个更长的东西。如果你不确定你的 Bash 提示符是什么,你可以在环境变量 $PS1 中找到它。要查看它,请输入:

echo $PS1

对于我而言,它返回:

[\u@\h \W]\$

\u\h\W 分别是用户名、主机名和工作目录的特殊字符。你还可以使用其他一些符号。为了帮助构建你的 Bash 提示符,你可以使用 EzPrompt,这是一个 PS1 配置的在线生成器,它包含了许多选项,包括日期和时间、Git 状态等。

你可能还有其他变量来组成 Bash 提示符。对我来说,$PS2 包含了我命令提示符的结束括号。有关详细信息,请参阅 这篇文章

要更改提示符,只需在终端中设置环境变量,如下所示:

$ PS1='\u is cold: '
jehb is cold:

要永久设置它,请使用你喜欢的文本编辑器将相同的代码添加到 /etc/bashrc 中。

那么这些与冬季化有什么关系呢?好吧,你很有可能有现代一下的机器,你的终端支持 Unicode,所以你不仅限于标准的 ASCII 字符集。你可以使用任何符合 Unicode 规范的 emoji,包括雪花 ❄、雪人 ☃ 或一对滑雪板。你有很多冬季 emoji 可供选择。

  • 圣诞树
  • 外套
  • 鹿手套
  • 圣诞夫人
  • 圣诞老人
  • 围巾
  • 滑雪者
  • 滑雪板
  • 雪花
  • 雪人
  • 没有雪的雪人
  • 包装好的礼物

选择你最喜欢的,享受冬天的欢乐。有趣的事实:现代文件系统也支持文件名中的 Unicode 字符,这意味着技术上你可以将你下个程序命名为 ❄❄❄❄❄.py。只是说说,不要这么做。

你有特别喜欢的命令行小玩具需要我介绍的吗?这个系列要介绍的小玩具大部分已经有了落实,但还预留了几个空位置。如果你有特别想了解的可以评论留言,我会查看的。如果还有空位置,我会考虑介绍它的。如果没有,但如果我得到了一些很好的意见,我会在最后做一些有价值的提及。

查看昨天的玩具,在 Linux 终端玩贪吃蛇,记得明天再来!


via: https://opensource.com/article/18/12/linux-toy-bash-prompt

作者:Jason Baker 选题:lujun9972 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

正在寻找基于终端的游戏来打发时间么?来看看 2048-cli 吧。

你好,欢迎来到今天的 Linux 命令行玩具日历。每天,我们会为你的终端带来一个不同的玩具:它可能是一个游戏或任何简单的消遣,可以帮助你获得乐趣。

很可能你们中的一些人之前已经看过我们日历中的各种玩具,但我们希望每个人至少见到一件新事物。

今天的玩具是我最喜欢的休闲游戏之一 2048 (它本身就是另外一个克隆品的克隆)的命令行版本

要进行游戏,你只需将滑块向上、向下、向左、向右移动,组合成对的数字,并增加数值,直到你得到数字为 2048 的块。最吸引人的地方(以及挑战)是你不能只移动一个滑块,而是需要移动屏幕上的每一块。(LCTT 译注:不知道有没有人在我们 Linux 中国的网站上遇到过 404 页面?那就是一个 2048 游戏,经常我错误地打开一个不存在的页面时,本应该去修复这个问题,却不小心沉迷于其中……)

它简单、有趣,很容易在里面沉迷几个小时。这个 2048 的克隆 2048-cli 是 Marc Tiehuis 用 C 编写的,并在 MIT 许可下开源。你可以在 GitHub 上找到源代码,你也可在这找到适用于你的平台的安装说明。由于它已为 Fedora 打包,因此我来说,安装就像下面那样简单:

$ sudo dnf install 2048-cli

这是这样,玩得开心!

你有特别喜欢的命令行小玩具需要我介绍的吗?这个系列要介绍的小玩具大部分已经有了落实,但还预留了几个空位置。如果你有特别想了解的可以评论留言,我会查看的。如果还有空位置,我会考虑介绍它的。如果没有,但如果我得到了一些很好的意见,我会在最后做一些有价值的提及。

查看昨天的玩具,在 Linux 终端中玩俄罗斯方块,记得明天再来!


via: https://opensource.com/article/18/12/linux-toy-2048

作者:Jason Baker 选题:lujun9972 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

使用这些工具从远程了解天气、阅读资料等。

我们即将结束为期 24 天的 Linux 命令行玩具日历。希望你有一直在看,如果没有,请回到开始,从头看过来。你会发现 Linux 终端有很多游戏、消遣和奇怪之处。

虽然你之前可能已经看过我们日历中的一些玩具,但我们希望每个人都遇见一个新事物。

今天的玩具(实际是玩具集合)有点不同。到目前为止,我主要是想把重点放在那些独立的玩具上,并且完全可在开源许可下使用。但是我从读者那里得到了一些很好的建议,利用开源工具远程访问一些开源或者不开源的东西。今天,我将介绍其中的一些。

第一个是经典之作:使用 Telnet 观看星球大战的 ASCII 演绎版本。你的系统可能已经安装了 Telnet,因此你只需运行:

$ telnet towel.blinkenlights.nl

我第一次看到它是十年之前,因此我对于它还存在有点惊奇。如果你还没看过,请留出一点时间看一下。你不会后悔的。

接下来,Opensource.com 的撰稿人 Manuel Dewald 提出了一种从终端获取当地天气的方法。它很简单,你只需安装 curl(或者,wget)。

$ curl wttr.in

最后,在假期中虽然你可以从命令行 Web 浏览器浏览你喜欢的网站(包括 Opensource.com),但有一些我最喜欢的网站可以通过专用客户端更轻松地浏览。其中两个是 Reddit 和 Hacker News,有人推荐给我一些它们的客户端,你可能也想尝试,它们都使用开源许可。我尝试过 haxor-news (Hacker News) 和 rtv (Reddit),它们都还不错。

你有特别喜欢的命令行小玩具需要我介绍的吗?提交今年的建议有点晚了,但我们仍然希望在新的一年里有一些很酷的命令行玩具。请在下面的评论中告诉我,我会查看的。让我知道你对今天的玩具有何看法。

一定要看看昨天的玩具,在 Linux 终端收看 Youtube 视频,明天还要再来!


via: https://opensource.com/article/18/12/linux-toy-remote

作者:Jason Baker 选题:lujun9972 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

有了这个 20 世纪 70 年代的经典重制游戏,Python 将不再是你在 Linux 终端能发现的唯一的“蛇”。

欢迎回到 Linux 命令行玩具日历。如果这是你第一次访问该系列,你可能会问什么是命令行玩具。这很难确切地说,但我的定义是任何可以帮助你在终端玩得开心的东西。

我们这周都在介绍游戏,这很有趣,接着让我们看下今天的游戏,贪吃蛇!

贪吃蛇是一个古老又很好的游戏,这些年一直有各种版本。我记得我第一次玩得版本是 20 世纪 90 年代与 QBasic 一起打包发布的 Nibbles),它对我理解什么是编程语言起了很重要的作用。我有游戏的源码,我可以修改并查看会发生什么,并学习到一些组成这个编程语言的有趣词汇究竟是什么意思。

今天的贪吃蛇是用 Go 写的,它很简单并且和原版的游戏一样有趣。像大多数简单的老游戏一样,它有很多版本可供选择。这今天的贪吃蛇中,甚至还有一个经典的 bsdgames 形式的包,它的发行版几乎一定有它。

但我喜欢的是用 Docker 打包的贪吃蛇,因为我可以轻松地在命令行中运行,而不用担心发行版相关的问题。这个版本使用 15 个随机的食物 emoji 图案让蛇来吃。我玩得不好。不管怎样,请试一下:

$ docker run -ti dyego/snake-game

这个贪吃蛇以 MIT 许可证开源,你可在 Github 取得源码。

你有特别喜欢的命令行小玩具需要我介绍的吗?这个系列要介绍的小玩具大部分已经有了落实,但还预留了几个空位置。请在评论区留言,我会查看的。如果还有空位置,我会考虑介绍它的。如果没有,但如果我得到了一些很好的意见,我会在最后做一些有价值的提及。

请查看昨天的玩具,数字 2 的力量,Linux 的力量:在命令行中玩 2048,记得明天再来!


via: https://opensource.com/article/18/12/linux-toy-snake

作者:Jason Baker 选题:lujun9972 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

想让你的终端被记住么?将它打在横幅上,不要错过。

欢迎再次来到为期 24 天的 Linux 命令行玩具日历。如果这是你第一次访问该系列,你甚至可能会问自己什么是命令行玩具。我们也在思考,但一般来说,它可能是一个游戏,或任何简单的消遣,可以帮助你在终端玩得开心。

很可能你们中的一些人之前已经看过我们日历中的各种玩具,但我们希望每个人至少见到一件新事物。

今天的玩具是 figlet,一个在 Linux 终端上以横幅形式打印文本的程序。

你可能会再标准仓库中找到 figlet。在我的 Fedora 上,这意味着安装就像下面这样简单:

$ sudo dnf install figlet

之后,只需使用程序的名称来调用它。你可以以交互方式使用它,或者将一些文本通过管道输入,如下所示:

echo "Hello world" | figlet
 _   _      _ _                            _     _
| | | | ___| | | ___   __      _____  _ __| | __| |
| |_| |/ _ \ | |/ _ \  \ \ /\ / / _ \| '__| |/ _` |
|  _  |  __/ | | (_) |  \ V  V / (_) | |  | | (_| |
|_| |_|\___|_|_|\___/    \_/\_/ \___/|_|  |_|\__,_|

figlet 有许多不同的字体。要查看可用的字体,请尝试使用命令 showfigfonts。在我这里显示了十几个。我在下面复制了一些我的最爱。

block :
                                           
_|        _|                      _|        
_|_|_|    _|    _|_|      _|_|_|  _|  _|    
_|    _|  _|  _|    _|  _|        _|_|      
_|    _|  _|  _|    _|  _|        _|  _|    
_|_|_|    _|    _|_|      _|_|_|  _|    _|  


bubble :
  _   _   _   _   _   _  
 / \ / \ / \ / \ / \ / \
( b | u | b | b | l | e )
 \_/ \_/ \_/ \_/ \_/ \_/


lean :
                                     
    _/                              
   _/    _/_/      _/_/_/  _/_/_/    
  _/  _/_/_/_/  _/    _/  _/    _/  
 _/  _/        _/    _/  _/    _/    
_/    _/_/_/    _/_/_/  _/    _/  


script :
                         
               o          
 ,   __   ,_        _ _|_
/ \_/    /  |  |  |/ \_|  
 \/ \___/   |_/|_/|__/ |_/
                 /|      
                 \|      

你可以在项目的主页上找到有关 figlet 的更多信息。我下载的版本是以 MIT 许可开源的。

你会发现 figlet 不是唯一的 Linux 终端横幅打印机。另外一个你可以选择的是 toilet,它有一套自己的 ASCII 艺术风格的打印选项。

你有特别喜欢的命令行小玩具需要我介绍的吗?我们的日历基本上满了,但我们仍然希望在新的一年中展示一些很酷的命令行玩具。请在评论中留言,我会查看的。记得让我知道你对今天玩具的看法。

一定要看看昨天的玩具,使用 asciiquarium 在终端中游泳,记得明天回来!


via: https://opensource.com/article/18/12/linux-toy-figlet

作者:Jason Baker 选题:lujun9972 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

数独是简单的逻辑游戏,它可以在任何地方玩,包括在 Linux 终端中。

欢迎回到我们为期 24 天的 Linux 命令行玩具日历。如果这是你第一次访问该系列,你甚至可能会问什么是命令行玩具。我们在考虑中,但一般来说,它可能是一个游戏,或任何简单的消遣,可以帮助你在终端玩得开心。

很可能你们中的一些人之前已经看过我们日历中的各种玩具,但我们希望每个人至少见到一件新事物。

每年圣诞节,我的岳母都会给我妻子一本数独日历。它接着会在我们的咖啡桌上呆上一年。每天都是一张单独的表格(星期六和星期日除外,它们合并在一页上),这样你每天都有一个新的谜题,同时还有一本能用的日历。

问题在于在实际中它是一本很好的谜题,但不是一本好的日历,因为事实证明有些日子的题目比其他日子更难,我们没有以每天一个的速度解决它们。然后,我们会在懒散的周日来解决这周堆积的谜题。

既然我在这个系列的一部分中介绍过日历,那么在这里介绍数独也是公平的,除了我们的命令行版本是解耦的,因此将来很容易就能完成它。

我在 Fedora 的默认仓库中找到了 nudoku,因此安装它就像下面这样简单:

$ sudo dnf install nudoku

安装完后,只需输入 nudoku 即可启动它,之后的操作就很明了。如果你以前从未玩过数独,它它很容易:你只需要确保每行、每列、每个 3x3 构成的方块里都包含了 1-9 的所有数字。

你可在 Github 中找到 GPLv3 许可的 nudoku 源码

你有特别喜欢的命令行小玩具需要我介绍的吗?我们的日历基本上满了,但我们仍然希望在新的一年中展示一些很酷的命令行玩具。请在评论中留言,我会查看的。记得让我知道你对今天玩具的看法。

一定要看看昨天的玩具,使用 Linux 终端庆祝丰年,记得明天回来!


via: https://opensource.com/article/18/12/linux-toy-nudoku

作者:Jason Baker 选题:lujun9972 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出