LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 975|回复: 7

这个命令为什么运行后会有严重后果???

[复制链接]
发表于 2006-1-28 12:06:02 | 显示全部楼层 |阅读模式
rm -rf foo */*foo与*间有个空*/
我是在一本关于安全的书上看到的
发表于 2006-1-28 13:16:55 | 显示全部楼层
如果你是root用户,如果又恰巧在根目录下执行,那么整个Linux就全给删掉了,这个还不严重?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-1-28 13:36:09 | 显示全部楼层
能不能讲的仔细一点
为什么foo *中多个空格就会这么严重
回复 支持 反对

使用道具 举报

发表于 2006-1-28 14:47:46 | 显示全部楼层
* 代表的是所有的文件,如果你  rm -rf 加入了这个参数,表明你将你当前目录下的所有文件和子文件目录全部删除,如果你是普通用户的话最多删除掉自己的文件,如果你是管理员的话,那将系统和用户数据在内的所有东西都 OVER 了,Linux 可是没有"回收站"的
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-1-28 21:57:59 | 显示全部楼层
问题是他书一定要有个空格啊
回复 支持 反对

使用道具 举报

发表于 2006-1-30 18:53:06 | 显示全部楼层
意思是强行删除 foo(也许是文件也许是目录)和所在目录下的所有文件和目录
也就是
rm -rf foo
rm -rf */*
两个命令同时执行
因为rm可以一次指定多个目标
rm -rf a b c d ...
这么说还行吧
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-1-30 19:40:12 | 显示全部楼层
I see.thank you
回复 支持 反对

使用道具 举报

发表于 2006-1-30 20:24:21 | 显示全部楼层
Post by changqe1984
意思是强行删除 foo(也许是文件也许是目录)和所在目录下的所有文件和目录
也就是
rm -rf foo
rm -rf */*
两个命令同时执行
因为rm可以一次指定多个目标
rm -rf a b c d ...
这么说还行吧


不准确吧。并不是删除所在目录下的所有文件和目录,而是删除当前目录下所有目录中的内容
可能表达得不好,下面是个例子:


  1. [diony@arch ~]$ mkdir -p test/test1
  2. [diony@arch ~]$ cd test/
  3. [diony@arch test]$ touch test2 test1/test3
  4. [diony@arch test]$ tree
  5. .
  6. |-- test1
  7. |   `-- test3
  8. `-- test2

  9. 1 directory, 2 files
  10. [diony@arch test]$ rm */* -rf
  11. [diony@arch test]$ tree
  12. .
  13. |-- test1
  14. `-- test2

  15. 1 directory, 1 file
  16. [diony@arch test]$

复制代码
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表