神奇的Linux命令行字符形狀工具boxes
現(xiàn)在正值假期,每個 Linux 終端用戶都該得到一點禮物。無論你是慶祝圣誕節(jié)還是慶祝其他節(jié)日,或者什么節(jié)日也沒有,都沒有關(guān)系。我將在接下來的幾周內(nèi)介紹 24 個 Linux 命令行小玩具,供你把玩或者與朋友分享。讓我們享受樂趣,讓這個月過得快樂一點,因為對于北半球來說,這個月有點冷并且沉悶。
對于我要講述的內(nèi)容,可能你之前就有些了解。但是,我還是希望我們都有機會學(xué)到一些新的東西(我做了一點研究,確??梢苑窒?24 個小玩具)。
24 個 Linux 終端小玩具中的***個是叫做 boxes 的小程序。為何從 boxes 說起呢?因為在沒有它的情況下很難將所有其他命令禮物包裝起來!
在我的 Fedora 機器上,默認沒有安裝 boxes 程序,但它在我的普通倉庫中可以獲取到,所以用如下命令就可安裝:
$ sudo dnf install boxes -y
如果你在使用其他 Linux 發(fā)行版,一般也都可以在默認倉庫中找到 boxes。
boxes 是我真正希望在高中和大學(xué)計算機課程中就使用的實用程序,因為善意的老師要求我在每個源文件、函數(shù)、代碼塊等開頭添加一些特定外觀的備注信息。
/***************//* Hello World *//***************/
事實證明,一旦你需要在框內(nèi)添加幾行文字,并且格式化的將它們統(tǒng)一風(fēng)格就會變得很乏味。而 boxes 是一個簡單實用程序,它使用 ASCII 藝術(shù)風(fēng)格的字符形狀框來包圍文本。其字符形狀默認風(fēng)格是源代碼注釋風(fēng)格,但也提供了一些其他選項。
它真的很容易使用。使用管道,便可以將一個簡短問候語塞進字符形狀盒子里。
$ cat greeting.txt | boxes -d diamonds -a c
上面的命令輸出結(jié)果如下:
/\ /\ /\/\//\\/\ /\//\\/\ /\//\\/\/\//\\\///\\/\//\\\///\\/\//\\\///\\/\//\\\//\/\\///\\\//\/\\///\\\//\/\\///\\\\//\/ \/\\//\/ \//\ I'm wishing you all a /\//\\ joyous holiday season //\\\\// and a Happy Gnu Year! \\//\/ \//\ /\//\\/\ /\//\\\\///\\/\//\\\///\\/\//\\\///\\/\//\\\//\/\\///\\\//\/\\///\\\//\/\\///\\\//\/\/\\//\/ \/\\//\/ \/\\//\/\/ \/ \/
或者玩點更有趣的,比如:
echo "I am a dog" | boxes -d dog -a c
不要驚訝,它將會輸出如下:
__ _,--="=--,_ __/ \." .-. "./ \/ ,/ _ : : _ \/` \\ `| /o\ :_: /o\ |\__/`-'| :="~` _ `~"=: |\` (_) `/.-"-. \ | / .-"-..---{ }--| /,.-'-.,\ |--{ }---.) (_)_)_) \_/`~-===-~`\_/ (_(_(_) (( I am a dog )) ('---------------------------------------'
boxes 程序提供了很多選項 用于填充、定位甚至處理正則表達式。你可以在其 項目主頁 上了解更多有關(guān) boxes 的信息,或者轉(zhuǎn)到 GitHub 去下載源代碼或者貢獻你自己的盒子形狀。說到此,如果你想給你的提交找個好點子,我已經(jīng)有了一個想法:為什么不能是一個節(jié)日禮物盒子?
_ _/_\/_\_______\_\/_/_______| ///\\\ || /// \\\ || || "Happy pull || request!" ||____________________|
boxes 是基于 GPLv2 許可證的開源項目。
你有特別喜歡的命令行小玩具需要我介紹的嗎?這個系列要介紹的小玩具大部分已經(jīng)落實,但還預(yù)留了幾個空位置。如果你有特別想了解的可以評論留言,我會查看的。如果還有空位置,我會考慮介紹它的。即使要介紹的小玩具已經(jīng)有 24 個了,但如果我得到了一些很好的意見,我會在***做一些有價值的提及。
你可以通過 Drive a locomotive through your Linux terminal 來查看明天會介紹的命令行小玩具。

























