如果我在rm -rf
中有一個軟鏈接的文件夾,它會嘗試關注這些鏈接並刪除相應的文件夾,還是隻是將它們解除鏈接?刪除包含符號鏈接的文件夾
我有我的主目錄,在它的符號鏈接的副本,我嚇得rm -rf
它的情況下,它遵循這些鏈接,並炸燬了相應的文件夾...
如果我在rm -rf
中有一個軟鏈接的文件夾,它會嘗試關注這些鏈接並刪除相應的文件夾,還是隻是將它們解除鏈接?刪除包含符號鏈接的文件夾
我有我的主目錄,在它的符號鏈接的副本,我嚇得rm -rf
它的情況下,它遵循這些鏈接,並炸燬了相應的文件夾...
號室射頻不會遵循符號鏈接 - 它只會刪除它們。
% mkdir a
% touch a/foo
% mkdir b
% ln -s a b/a
% rm -rf b
% ls a
foo
一般來說,rm
不會「刪除」。它「取消關聯」。這意味着對文件的引用將被rm
刪除。當引用數量達到零時,文件將不再可訪問,並且及時,它所在的磁盤區域將用於其他內容。
當你rm
一個目錄,目錄內的東西是取消鏈接。符號鏈接是(有點像)文件,其內部的目標名稱被刪除。要真正找出他們指向的內容,然後取消鏈接目標是特殊工作,所以不會由通用工具完成。
這裏是axample:
find a b
a
a/1
a/2
b
ll
drwxr-xr-x 2 ****** ****** 4.0K Feb 6 15:11 a
lrwxrwxrwx 1 ****** ****** 1 Feb 6 15:13 b -> a
。
rm -rf b
給
find a b
a
a/1
a/2
。
rm -rf b/
給出了錯誤:
rm: cannot remove `b/': Not a directory
結論:
RM不跟隨符號連接