一天一个Linux命令:文件操作「删」rm
命令:rm -rf 文件名 (慎用,慎用,慎用)
rm (选项)(参数)
命令功能:
rm -rf是一条UNIX系统下的文件删除命令,作用是无提示地强制递归删除一个目录中的一个或多个文件或目录,如果没有使用- r选项,则rm不会删除目录。如果使用 rm 来删除文件,通常仍可以将该文件恢复原状。
命令参数:
-f, --force 忽略不存在的文件,从不给出提示。
-i, --interactive 进行交互式删除
-r, -R, --recursive 指示rm将参数中列出的全部目录和子目录均递归地删除。
-v, --verbose 详细显示进行的步骤
--help 显示此帮助信息并退出
--version 输出版本信息并退出
rm
UNIX系统下的文件删除指令,可以删除一个目录中的一个或多个文件或目录,也可以将某个目录及其下属的所有文件及其子目录均删除掉。对于链接文件,只是删除整个链接文件,而原有文件保持不变。
-rf
rf指令由-r和-f两个指令合写而成,-r表示递归地处理文件,即处理该目录及其所有子目录下符合条件的文件;-f则是无提示强制删除。
rm -rf /*
注意,这样做是非常危险的!
计算机组成原理(48) CPU设计进阶之七——用停滞策略解决数据危害
我们考虑如下的顺序执行的指令:
第1条指令和第2条指令共用一个寄存器 。
正确执行 指令显然是基于第一条指令正确执行存放在寄存器R2 中的结果。我们来看看会发生什么情况?
我们同样观察6个周期的情况,显示了逐周期的指令的执行,如下表:
第一条指令在第5个周期的WR阶段的末才将结果写入寄存器R2 ,而第二条指令在第3个周期的RF阶段就需要从寄存器R2 读出数据,而此时显然第一条指令还没有执行完成!因此就目前而言,流水线显然“无法” 正确执行此指令序列,这就意味着该指令序列发生了数据危害 。
停滞的原理
用策略1【停滞(stall)】解决数据危害。我们需要在RF阶段,直到ADDC指令在第5个周期的末期将结果写入寄存器R2 为止,都是停滞,所以在RF 阶段指令SUBC停滞了3次。每当RF阶段停滞时,更早的IF阶段也被迫停滞,所以指令MUL在更早的IF阶段也停滞了 次。
需要在RF停滞阶段为ALU编写无害的指令NOP (无操作的缩写)。
无害的指令NOP 对CPU的状态没有影响,即它不会更改寄存器文件和主内存中的内容。例如,任何以寄存器R31为目标寄存器的OP或OPC类指令都是无害的指令。我们观察8个周期的情况,显示了逐周期的指令的执行,如下表:
由于在RF阶段指令SUBC停滞了3次,所以在后续周期的后续ALU、MEM、WR阶段,都引入了3次NOP 。
我们有时将这些NOP 称作流水线中的“气泡(Bubbles) ”。
停滞的检测
流水线如何知道什么时候停滞?它可以将RF阶段指令的RA和RB字段中的寄存器号与ALU、MEM、WB阶段指令的RC字段中的寄存器号进行比较,如果匹配,则有数据危害,RF阶段应停滞,停滞一直持续到没有发现数据危害为止。
有一些细节需要注意:某些指令不会同时读取两个寄存器,如ST指令不适用RC字段,并且我们不希望与R31匹配,因为R31任何时候都可以从寄存器文件中读取。
停滞的缺点
停滞会确保流水线正确执行,但增加了CPI(Cycles Per Instruction)。如果CPI大幅上升,将导致更长的执行时间。
停滞的逻辑(Stall Logic)
要实现停滞,我们只需要对流水线数据路径进行两个简单的更改。如下图所示:
1. 增加一个新的控制信号STALL ,若STALL==1:
- 将RF阶段的PC和IR流水线寄存器禁用,
- 将NOP指令注入ALU阶段
2. 引入一个NOP指令,如ADD(R31,R31,R31) 。添加一个多路复用器,当STALL==1时,指令变成NOP。
3. 如果RF阶段的指令寄存器中的源寄存器与ALU、MEM、 WB阶段上的指令寄存器、 、 中的目标寄存器匹配,控制逻辑设置STALL=1 (除非源寄存器为R31 )。
相关问答
2/EN301489-1/EN301489-3/EN62479/EN60065分别指什么?
[最佳回答]EN300330-2是RF指令.EN301489-1/-3是EMC指令EN62479是Health指令EN60065是LVD指令.
CAD快捷键RF是干什么的?-懂得
CAD的快捷键RF,在命令行输入RF后,出现了渲染预设管理器,如下图:实战建筑培训
-rf什么指令?
[最佳回答]r是给rm加入递归(recursion)特性,也就是目标为文件夹时删除文件夹下所有数据。f给rm加入强制(force)特性,也就是遇到删除时不需要询问即可直接删除。-是表示...
mac下怎么使用sudorm-rf这个指令?-ZOL问答
在命令行里敲这行命令加你要删除的文件名比如你要删除的文件夹名叫test,那就在terminal里敲sudorm-rftest!这会永久删除test文件夹里的所有文件和test这...
在DEBUG中如何将CF和OF的值设为1,即CY,OV?-懂得
用RF命令,如下所示:C:\DOCUME~1\ADMINI~1>debug-RAX=0000BX=0000CX=0000DX=0000SP=FFEEBP=0000SI=0000DI=0000
linux指令rm-fr与rm-rf一样么?-ZOL问答
rm-fr和rm-rf都是强力命令行工具,在Linux里用于移除文件或目录(包括隐藏的),只是添加了-f来避免交互式确认和-r以处理嵌套结构。用的时候要小心是的,两者...
在RF里怎么喊话?-小红薯D6019F9A的回答-懂得
在RF里面喊话,需要按下Enter键打开聊天栏,在打开的聊天栏中输入消息,按下Enter键即可发送消息。如果需要喊话给整个服务器的玩家听,可以在消息前加...
rm-rf命令什么意思?
[最佳回答]rm-rf是一条UNIX系统下的文件删除命令,作用是无提示地强制递归删除文件。只需要在UNIX的命令行界面打出“rm-rf”(不含双引号)便可以调用这一条指令,删除...
rf是什么编程?
[最佳回答]RF是RadioFrequency的缩写,即射频。在电子学理论中,电流流过导体,导体周围会形成磁场;交变电流通过导体,导体周围会形成交变的电磁场,称为电磁波。
谁知道这个是什么指令Linux的rm-rf/-ZOL问答
否则整个系统就会毁在这个命令(比如在/(根目录)下执行rm*-rf),据说最近携程服务器就是被rm给害了,所以,我们在执行rm之前最好先确认一下在哪个目录,到底要删除...