为了账号安全,请及时绑定邮箱和手机立即绑定

Linux/Unix 桌面趣事:文字模式下的 ASCII 艺术与注释绘画

标签:
Linux

boxes 命令不仅是一个文本过滤器,同时是一个很少人知道的有趣工具,它可以在输入的文本或者代码周围框上各种ASCII 艺术画。你可以用它快速创建邮件签名,或者在各种编程语言中留下评论块。这个命令可以在 vim 文本编辑器中使用,但是也可以在各种支持过滤器的文本编辑器中使用,同时也可以在命令行中单独使用。

任务: 安装 boxes

使用 apt-get 命令 在 Debian / Ubuntu Linux 中安装 boxes:

$ sudo apt-get install boxes

输出示例:

Reading package lists... Done
Building dependency tree
Reading state information... Done
The following NEW packages will be installed:
  boxes
0 upgraded, 1 newly installed, 0 to remove and 6 not upgraded.
Need to get 0 B/59.8 kB of archives.
After this operation, 205 kB of additional disk space will be used.
Selecting previously deselected package boxes.
(Reading database ... 224284 files and directories currently installed.)
Unpacking boxes (from .../boxes_1.0.1a-2.3_amd64.deb) ...
Processing triggers for man-db ...
Setting up boxes (1.0.1a-2.3) ...

RHEL / CentOS / Fedora Linux 用户, 使用 yum 命令来安装 boxes,(请先启用 EPEL 软件仓库):

# yum install boxes

输出示例:

Loaded plugins: rhnplugin
Setting up Install Process
Resolving Dependencies
There are unfinished transactions remaining. You might consider running yum-complete-transaction first to finish them.--> Running transaction check---> Package boxes.x86_64 0:1.1-8.el6 will be installed--> Finished Dependency ResolutionDependencies Resolved
========================================================================== Package        Arch            Version               Repository     Size==========================================================================
Installing:
 boxes          x86_64          1.1-8.el6             epel           64 kTransaction Summary
==========================================================================Install       1 Package(s)
Total download size: 64 k
Installed size: 151 kIs this ok [y/N]: y
Downloading Packages:
boxes-1.1-8.el6.x86_64.rpm                         |  64 kB     00:00Running rpm_check_debug
Running Transaction TestTransaction Test Succeeded
Running Transaction
  Installing : boxes-1.1-8.el6.x86_64                                 1/1Installed:
  boxes.x86_64 0:1.1-8.el6Complete!

FreeBSD 用户可以按如下使用:

cd /usr/ports/misc/boxes/ && make install clean

或者,使用 pkg_add 命令来增加包:

# pkg_add -r boxes

在一些给定文本周围画出任何种类的包围框

输入下列命令:

echo "This is a test" | boxes

或者,指定要使用的图案的名字:

echo -e "\n\tVivek Gite\n\tvivek@nixcraft.com\n\twww.cyberciti.biz" | boxes -d dog

输出示例 :

Unix / Linux: Boxes Command To Draw Various Designs

图01: Unix / Linux: Boxes 命令来画出各式各样的图案

怎么样输出所有的图案

语法如下:

boxes option
pipe | boxes optionsecho "text" | boxes -d fooboxes -l

-d 选项用来设置要使用的图案的名字。语法如下:

echo "Text" | boxes -d designpipe | boxes -d desig

-l 选项列出所有图案。它显示了在配置文件中的所有的框线设计图,同时也显示关于其创作者的信息。

boxes -l
boxes -l | moreboxes -l | less

输出示例:

43 Available Styles in "/etc/boxes/boxes-config":
-------------------------------------------------ada-box (Neil Bird ):
    ---------------    --           --    --           --    ---------------ada-cmt (Neil Bird ):
    --    -- regular Ada    -- comments    --boy (Joan G. Stark ):
                    .-"""-.                   / .===. \
                   \/ 6 6 \/
                   ( \___/ )
      `_____` ooo__\_____/______________     /                                   \
    |   joan stark   spunk1111@juno.com   |
    |     VISIT MY ASCII ART GALLERY:     |
    | http://www.geocities.com/SoHo/7373/ |
     \_______________________ooo_________/  jgs
                    |  |  |
                    |_ | _|
                    |  |  |
                    |__|__|                    /-'Y'-\
                   (__/ \__)
....
...
output truncated
..

在使用 vi/vim 文本编辑器时如何通过 boxes 过滤文本?

你可以在 vi 或 vim 中使用任何外部命令,比如在这个例子中,插入当前日期和时间,输入:

!!date

或者

:r !date

你需要在 vim 中输入以上命令来读取 date 命令的输出,这将在当前行后面加入日期和时分秒:

Tue Jun 12 00:05:38 IST 2012

你可以用 boxes 命令做到同样的功能。如下创建一个作为示例的 shell 脚本或者c程序:

#!/bin/bashPurpose: Backup mysql database to remote server.
Author: Vivek Gite
Last updated on: Tue Jun, 12 2012

现在输入如下(将光标移到第二行,也就是以“Purpose: ...”开头的行)

3!!boxes

瞧,你就会看到如下的输出 :

#!/bin/bash/****************************************************//* Purpose: Backup mysql database to remote server. *//* Author: Vivek Gite           *//* Last updated on: Tue Jun, 12 2012                *//****************************************************/

这个短片将会给你介绍boxes命令:

注:youtube 视频

<iframe width="595" height="446" frameborder="0" class="lazyload" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAANSURBVBhXYzh8+PB/AAffA0nNPuCLAAAAAElFTkSuQmCC" data-original="[http://www.youtube.com/embed/glzXjNvrYOc?rel=0"></iframe](http://www.youtube.com/embed/glzXjNvrYOc?rel=0"></iframe)>

参见

  • boxes 帮助手册


译文出处:https://www.zcfy.cc/article/linux-or-unix-desktop-fun-text-mode-ascii-art-box-and-comment-drawing 

via: http://www.cyberciti.biz/tips/unix-linux-draw-any-kind-of-boxes-around-text-editor.html

作者:Vivek Gite 译者:zky001 校对:wxy


点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消