rm (Unix)
外观
rm (remove的英文缩写) 是一个基本的 UNIX命令,用于删除文件系统中的文件、目录、设备文件、符号链接等对象。准确地说,rm移除的指向特定对象的引用。在文件系统中,这些特定的对象可能有多个引用(例如,两个不同的文件名可能指向相同的文件), 只有在一个对象不再有任何引用,并且没有任何程序还拥有这个文件的有效句柄的时候,这个文件才会被删除。
这一机制允许下列出现:某个程序可以创建一个文件,并立即将此文件从文件系统中移除,并将这个文件占用的空间作为临时空间使用。(因为我们知道在该程序退出甚至是崩溃的时候,这一文件占用的空间会被回收。)
rm命令一般来说并不摧毁文件数据,因为其目的仅仅在于解除引用。即便文件已经解除所有的引用,在文件系统中,被释放的空间里可能还会有被删除文件的残留数据。在一些情况下这会带来安全问题,因此有时加强版的命令会在文件的最后一个链接断开之后抹除被删除文件的数据。此外,一些程序(例如 shred)可以提供数据抹除能力。