linux终端如何嘲笑使用者???

介绍了一个有趣的CLI工具,当用户在Linux终端输入错误命令时,会收到随机的嘲笑回应,为工作增添乐趣。通过简单的安装步骤即可体验。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

    看到这篇文章的时候,突然想到一个朋友。我有一个做机器人方向的朋友,他常常爱在项目中打印一些嘲笑使用者的话。看到这篇文章的时候,我差点就笑出了猪叫声。该开源项目的发起人多像我那个朋友。。。于是转载下来,娱乐娱乐。

    今天要介绍的,是一个非常有趣的 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"
        ... #省略
    }
当然,这个也可以写成中文的。如果你不喜欢这些嘲讽的话,你可以将它们改成一些鼓励的话,比如:加油哦,棒棒哒,你行的 ,就看你的脑洞啦~
--------------------- 
作者:yychuyu 
来源:CSDN 
原文:https://blog.csdn.net/yychuyu/article/details/89482524 
版权声明:本文为博主原创文章,转载请附上博文链接!

<think>我们首先需要明确用户的问题:"冻结终端输出使用ctrl+?"。这里的"冻结"通常指的是暂停终端输出滚动(类似于暂停屏幕输出),而ctrl+?可能是一个按键组合的表示。在常见的终端操作中,暂停输出的快捷键通常是Ctrl+S(恢复是Ctrl+Q),而Ctrl+?并不是一个标准的暂停快捷键。注意,Ctrl+?在某些系统中可能对应Ctrl+/(因为?和/在同一个键上,需要Shift按出),但通常Ctrl+/并不是用于暂停终端输出的。 因此,我们需要指出这个说法可能有误,并解释正确的快捷键。 ### 回答步骤: 1. **指出错误**:直接说明该快捷键组合不正确。 2. **解释正确的快捷键**:介绍标准的暂停和恢复终端输出的快捷键(Ctrl+S和Ctrl+Q)。 3. **解释为什么会有误解**:可能用户记错了,或者在某些特定环境下有自定义设置。 4. **注意事项**:提醒用户使用正确的快捷键,并解释其工作原理。 ### 回答内容: ### 回答 "冻结终端输出使用ctrl+?" 这一说法**不正确**。以下是详细说明: #### 🔍 正确快捷键 1. **暂停终端输出**: - 标准快捷键是 **Ctrl+S**(Send STOP signal) - 效果:立即冻结当前终端输出,用户可查看静止画面 2. **恢复终端输出**: - 标准快捷键是 **Ctrl+Q**(Send START signal) - 效果:继续被暂停的输出流 #### ❓ 为何误解 - **Ctrl+? 的实质**: - `?` 键通常与 `/` 键共享(需按Shift),因此 `Ctrl+?` 实际等价于 **Ctrl+Shift+/** - 该组合**无暂停功能**,在某些终端中可能触发其他操作(如快捷键帮助) - 常见混淆原因: - 用户误记(如将 `Ctrl+S` 记作 `Ctrl+?`) - 终端自定义配置(罕见) #### ⚙️ 工作原理 - **底层机制**: - `Ctrl+S` 发送 `XOFF` 控制字符(ASCII 19),通知终端暂停数据处理 - `Ctrl+Q` 发送 `XON` 控制字符(ASCII 17),通知终端恢复处理 - **注意**: - 该功能是终端输入/输出流控的基础特性,支持所有类Unix系统(Linux/macOS) - 若误按 `Ctrl+S` 导致终端“假死”,按 `Ctrl+Q` 即可恢复 #### 💻 验证示例 1. 在终端执行长输出命令(如 `cat /dev/urandom`) 2. 按 `Ctrl+S` → 输出冻结 3. 按 `Ctrl+Q` → 输出恢复 ### 结论 正确暂停终端输出的快捷键是 **Ctrl+S**,恢复快捷键是 **Ctrl+Q**。`Ctrl+?` 无此功能。 §§相关问题§§ 1. 为什么按Ctrl+S后终端会“假死”,如何解决? 2. 除了Ctrl+S/Ctrl+Q,还有哪些控制终端输出的常用快捷键? 3. 如何禁用终端对Ctrl+S和Ctrl+Q的响应(如避免误触)? 4. 在哪些特殊场景下Ctrl+S/Ctrl+Q会失效(如远程SSH连接)? 5. 终端流控(XON/XOFF)机制与硬件流控(RTS/CTS)有何区别?</think>### 回答 "冻结终端输出使用ctrl+?" 这一说法**存在错误**。以下是详细说明: #### 🔍 正确快捷键 1. **标准冻结/暂停键**: - **Ctrl+S**:冻结终端输出(暂停屏幕刷新) - **Ctrl+Q**:恢复终端输出(解除冻结) - 这是类Unix系统(Linux/macOS)终端的**通用控制流**机制 2. **Ctrl+? 的实质**: - `?` 键通常与 `/` 键共享(需按Shift),因此 `Ctrl+?` 实际等价于 **Ctrl+/** - 该组合**无冻结功能**,常见作用: - 在Vim中:添加注释 - 在Emacs中:调用帮助系统 - 在Chrome:打开设置页 #### ❓ 为何误解 - **历史原因**:早期DEC VT系列终端使用Ctrl+S/XON-XOFF流控 - **常见混淆**: - 用户误记(如将 `Ctrl+S` 记作 `Ctrl+?`) - 某些IDE自定义快捷键(非标准终端行为) #### ⚠️ 注意事项 1. **假死现象**: - 误按 `Ctrl+S` 后终端"冻结"(实际是流控暂停) - 解决方案:立即按 `Ctrl+Q` 恢复 2. **现代终端差异**: - GUI终端(如GNOME Terminal)默认禁用XON/XOFF - 可通过 `stty -ixon` 显式禁用该功能 #### 💻 验证步骤 ```bash # 1. 启用流控(若被禁用) $ stty ixon # 2. 测试冻结/恢复 $ cat /dev/urandom # 产生持续输出 [按 Ctrl+S] → 输出冻结 [按 Ctrl+Q] → 输出恢复 ``` ### 结论 正确冻结终端输出的快捷键是 **Ctrl+S**(恢复用 **Ctrl+Q**),而非 Ctrl+?。后者在标准终端中无冻结功能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值