Rm_(Unix)

rm ， 是一個基本的UNIX命令 ， 其名稱源自英文單詞remove的縮寫 ， 用於刪除文件系統中的文件 、 目錄 、 設備文件 、 符號鏈接等對象 。 準確地說 ， rm移除的指向特定對象的引用 。 在文件系統中 ， 這些特定的對象可能有多個引用 （ 例如 ， 兩個不同的文件名可能指向相同的文件 ）, 只有在一個對象不再有任何引用 ， 並且沒有任何程序還擁有這個文件的有效句柄的時候 ， 這個文件纔會被刪除 。 這一機制允許下列出現 ： 某個程序可以創建一個文件 ， 並立即將此文件從文件系統中移除 ， 並將這個文件佔用的空間作爲臨時空間使用 。 （ 因爲我們知道在該程序退出甚至是崩潰的時候 ， 這一文件佔用的空間會被回收 。 ） rm命令一般來說並不摧毀文件數據 ， 因爲其目的僅僅在於解除引用 。 即便文件已經解除所有的引用 ， 在文件系統中 ， 被釋放的空間裏可能還會有被刪除文件的殘留數據 。 在一些情況下這會帶來安全問題 ， 因此有時加強版的命令會在文件的最後一個鏈接斷開之後抹除被刪除文件的數據 。 此外 ， 一些程序 （ 例如 ： shred ） 可以提供數據抹除能力 。