尝试使用 rmdir 删除当前目录

尝试使用 rmdir 删除当前目录

dir在桌面上创建了一个目录,然后我键入cd dir以使其成为我的当前目录,然后我从目录本身dir输入终端,令人惊讶的是,这删除了该目录,但当我使用它检查当前工作目录时,它仍然显示我在该目录中,所以我的问题是我怎么可能在一个已被删除的目录中工作。我目前正在 Ubuntu 上工作rmdir /home/user_name/Desktop/dirdirdirpwddir

答案1

如果你想了解为什么这就是,你需要了解文件和索引节点之间的区别。 rm、rmdir 和 mv 都对描述文件/目录的 inode 执行操作,而不是对实际文件执行操作。如果您打开了一个文件/目录(例如,通过在目录中),则索引节点信息将被删除,但与该文件/目录关联的实际数据文件不会被删除,直到所有指向它的文件句柄都被关闭。因此,当您“cd ..”时,文件系统可以突然介入并删除该目录及其所有内容。

https://en.wikipedia.org/wiki/Inode

http://www.grymoire.com/Unix/Inodes.html

相关内容