人这一辈子,真的是非常不容易:读书时,被老师、同学嘲笑,工作时,被老板、同事嘲笑,就连出去撸个串儿,还可能被朋友嘲笑……

这些也就算了,毕竟大家还都是同类,都是活生生的人。但是,你如果被 Linux 终端给嘲笑了,你的内心会是什么感受?

今天要介绍的,是一个非常有趣的 CLI 工具,这个工具可以实现当你在终端输错命令时,会随机回复一句嘲笑你的话。虽然是嘲笑人的工具,但良许觉得还是挺有趣的,给枯燥的工作带来一些乐趣。

Linux 终端嘲笑器的安装

这是一个在 GitHub 上的开源项目,所以可以直接 clone 到本地:

git clone https://github.com/hkbakke/bash-insulter.git bash-insulter

将下载后的 bash.command-not-found 文件复制到 etc 目录下:

sudo cp bash-insulter/src/bash.command-not-found /etc/

然后,再将 bash.command-not-found 添加到 bash.bashrc 文件里:

$ vi /etc/bash.bashrc

#Bash Insulter
if [ -f /etc/bash.command-not-found ]; then
. /etc/bash.command-not-found
fi

运行以下命令使以上的改动生效:

sudo source /etc/bash.bashrc

大功告成了!接下来你就可以测试一下这个神奇的会嘲笑人的工具!

Linux 终端嘲笑器的使用

我们随便乱输一些不存在的「命令」,然后就接受它的嘲笑吧~

[alvin@VM_0_16_centos ~]$ sldkf

  Why are you doing this to me?!

-bash: sldkf: command not found
[alvin@VM_0_16_centos ~]$ iehf You are not as bad as people say, you are much, much worse. -bash: iehf: command not found
[alvin@VM_0_16_centos ~]$ sdfas How many times do I have to flush before you go away? -bash: sdfas: command not found

Linux 终端嘲笑器的配置

上面那些嘲讽的句子,其实是可以配置的,它的文件就是刚刚复制的 bash.command-not-found 文件,直接编辑它,就可以自己添加一些句子。

# vi /etc/bash.command-not-found

print_message () {

    local messages
local message messages=(
"Boooo!"
"Don't you know anything?"
"RTFM!"
"Haha, n00b!"
"Wow! That was impressively wrong!"
"Pathetic"
... #省略
}

当然,这个也可以写成中文的。如果你不喜欢这些嘲讽的话,你可以将它们改成一些鼓励的话,比如:加油哦,棒棒哒,你行的 ,就看你的脑洞啦~


公众号:良许Linux

有收获?希望老铁们来个三连击,给更多的人看到这篇文章

说出来也许你不信,我被 Linux 终端嘲笑了……的更多相关文章

  1. 从Linux终端管理进程:10个你必须知道的命令

    从Linux终端管理进程:10个你必须知道的命令 Linux终端有一系列有用的命令.它们可以显示正在运行的进程.杀死进程和改变进程的优先级.本文列举了一些经典传统的命令和一些有用新颖的命令.本文提到的 ...

  2. Linux终端复用神器-Tmux使用梳理

    Tmux是一个优秀的终端复用软件,类似GNU Screen,但来自于OpenBSD,采用BSD授权.使用它最直观的好处就是,通过一个终端登录远程主机并运行tmux后,在其中可以开启多个控制台而无需再“ ...

  3. 如何记录linux终端下的操作日志

    如何记录linux终端下的操作日志 在linux终端下,为方便检查操作中可能出现的错误,以及避免屏幕滚屏的限制,我们可以把操作日志记录下来.常用的工具有 screen,script,以及tee等,通过 ...

  4. 这些孩子在 Ubuntu 的 Linux 终端下玩耍

    导读 我发现了一个孩子们在他们的计算机教室里玩得很开心的视频.我不知道他们在哪里,但我猜测是在印度尼西亚或者马来西亚.视频请自行搭梯子: https://youtu.be/z8taQPomp0Y 在L ...

  5. Linux终端那件事儿

    我们将会讨论如何更好的控制用户终端:也就说是键盘输入与屏幕输出.除了这些,我们还会了解我们编写的程序如何由用户处读取输入,即使是在输入重定向的情况下,以及确保输出到屏幕的正确位置.这里所提供的一些底层 ...

  6. Linux终端打印命令使用介绍

    常用linux打印命令 日常使用中或shell脚本中linux终端打印命令有echo和printf.  echo命令 功能说明:显示文字.语 法:echo [-ne][字符串]或 echo [--he ...

  7. 在linux终端远程登陆linux服务器

    在linux终端远程登陆linux服务器   原来在Linux终端远程登陆linux服务器是那么的容易,如果的服务器用户名是abc(也可以是root),只需要在终端输入: 然后电脑会提示输入密码就登录 ...

  8. PS1应用之——修改linux终端命令行各字体颜色

    最近在学习linux操作系统(CentOS 6 & CentOS 7).觉得linux终端命令行全部为白色,会经常导致命令与输出内容难以分辨.于是上网找到修改linux终端命令行颜色的方法,发 ...

  9. Linux终端下安装jdk

    linux 终端下安装jdk(rpm方法) 1.下载jdk对应版本rpm文件(以下称为jdk.rpm) 放在对应文件夹下 2.使用命令给定权限 #chmod +x jdk.rpm 3.解压rpm文件 ...

随机推荐

  1. 入门大数据---HDFS-API

    第一步:创建一个新的项目 并导入需要的jar包 公共核心包 公共依赖包 hdfs核心包 hdfs依赖包 第二步:将Linux中hadoop的配置文件拷贝到项目的src目录下 第三步:配置windows ...

  2. 并发05--JAVA并发容器、框架、原子操作类

    一.ConcurrentHashMap的实现原理与使用 1.为什么要使用ConsurrentHashMap 两个原因,hashMap线程不安全(多线程并发put时,可能造成Entry链表变成环形数据结 ...

  3. Electron: 如何以 Vue.js, Vuetify 开始应用

    Electron: 使用 JavaScript, HTML 和 CSS 等 Web 技术创建原生程序的框架 Vue.js: Web 前端用于构建用户界面的渐进式框架 Vuetify: Vue.js 的 ...

  4. unable to load script from assets 'index.android bundle'

    在Android手机上运行React-native项目时 报错:unable to load script from assets 'index.android bundle'  ,make sure ...

  5. MongoDB快速入门教程 (4.4)

    4.5.Mongoose索引和方法 4.5.1.设置索引 let UserSchema = mongoose.Schema({ sn: { type: Number, // 设置唯一索引 unique ...

  6. 【Xamarin.Forms 1】App的创建与运行

    引言 本篇文章将从介绍Xamarin.Forms创建开始. 开发环境 Visual Studio 2019 16.6.2 Xamarin.Forms 4.6.0.726 Android 5.0 (AP ...

  7. 你想了解的 HTTPS 都在这里

    HTTP 协议仅仅制定了互联网传输的标准,简化了直接使用 TCP 协议进行通信的难度.有关 HTTP 协议相关的讲解请看前面两节: HTTP 协议详解 HTTP协议详解(二) less is more ...

  8. Mybatis一对一映射resultMap子标签中顺序问题

    直接上图 鼠标点上红线出现如下提示 The content of element type "resultMap" must match  "(constructor?, ...

  9. 安卓移动端line-height垂直居中出现偏移的原因,及解决方法

    目前在移动端安卓手机上使用line-height属性,让它的值等于height,结果发现是不居中的.出现了一定位置的偏移情况,如果略微只有两三个像素差距是看不出来的. 左图中的字号是12px,右图中的 ...

  10. 顺时针打印矩阵(剑指offer-19)

    题目描述 输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字,例如,如果输入如下4 X 4矩阵: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 则依次打印出数 ...