我dir
在桌面上创建了一个目录,然后我键入cd dir
以使其成为我的当前目录,然后我从目录本身dir
输入终端,令人惊讶的是,这删除了该目录,但当我使用它检查当前工作目录时,它仍然显示我在该目录中,所以我的问题是我怎么可能在一个已被删除的目录中工作。我目前正在 Ubuntu 上工作rmdir /home/user_name/Desktop/dir
dir
dir
pwd
dir
答案1
如果你想了解为什么这就是,你需要了解文件和索引节点之间的区别。 rm、rmdir 和 mv 都对描述文件/目录的 inode 执行操作,而不是对实际文件执行操作。如果您打开了一个文件/目录(例如,通过在目录中),则索引节点信息将被删除,但与该文件/目录关联的实际数据文件不会被删除,直到所有指向它的文件句柄都被关闭。因此,当您“cd ..”时,文件系统可以突然介入并删除该目录及其所有内容。