码迷,mamicode.com
首页 > 其他好文 > 详细

致命的rm命令,用错了后悔一万年

时间:2016-04-08 20:11:21      阅读:208      评论:0      收藏:0      [点我收藏+]

标签:阿里云   服务器   源文件   软件   

背景:服务器迁移到阿里云,在阿里云上布apache,由于改变软件路径,故需要删除原先的软链接(软件软链接目录)

执行操作:\rm -r /data/httpd

执行后果:软链接文件没有删除,但是源文件下的内容被删除了

 

当时我的思考:

可能是由于-r参数,递归删除,对于软链接,它会删除源文件

 

测试:

[root@iZ25papb7g2Z data]# mkdir 123

[root@iZ25papb7g2Z data]# cd 123

[root@iZ25papb7g2Z 123]# touch {1..5}.txt

[root@iZ25papb7g2Z 123]# ls

1.txt  2.txt  3.txt  4.txt  5.txt

[root@iZ25papb7g2Z 123]# cd ../

[root@iZ25papb7g2Z data]# ln -s /data/123/ /data/456

[root@iZ25papb7g2Z data]# ls /data/456/

1.txt  2.txt  3.txt  4.txt  5.txt

[root@iZ25papb7g2Z data]# \rm -r 456/

rm: cannot remove `456‘: Not a directory

[root@iZ25papb7g2Z data]# ls 456

[root@iZ25papb7g2Z data]# ls 123

[root@iZ25papb7g2Z data]# ls

123  456

由此证明我的猜测是对的。

那怎么删除软链接文件呢?

正确的删除应该是这样的

[root@iZ25papb7g2Z data]# rm 456

rm: remove symbolic link `456‘? y

[root@iZ25papb7g2Z data]# ls 456

ls: cannot access 456: No such file or directory

 

 

最后得出结论:软链接就是一个文件,不是目录

(各位看官,别忘了留下你宝贵的意见哈)

本文出自 “IT--小哥” 博客,请务必保留此出处http://402753795.blog.51cto.com/10788998/1761854

致命的rm命令,用错了后悔一万年

标签:阿里云   服务器   源文件   软件   

原文地址:http://402753795.blog.51cto.com/10788998/1761854

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!