我以前从未遇到过这个问题,但由于某种原因,我无法将文件夹重命名为packages/
.
这是结构:
root
- packages_old/
- packages
当我尝试使用 Thunar 重命名文件夹时,收到一条错误消息,指出该文件已存在。与mv
:相同
blender iso $ mv packages_old/ packages/
mv: accessing `packages/': Not a directory
为什么我无法将文件和文件夹重命名为相同的名称:
root
- packages/
- packages
我发誓我以前做过这个。
答案1
在 Unix 中,几乎所有东西都是文件。目录是一种特殊类型的文件,从用户的角度来看,它可以“包含”其他文件。
出现该错误的Not a directory
原因是您现有的文件不是目录,而目录是文件的一种类型,一个目录中不能有两个同名的文件,因此无法执行该操作。
答案2
因为如果你能够做这样的事情,那么当我尝试迭代目录中的文件时,像我这样的程序员的生活将会很痛苦。
对于以下伪代码:
isDir('/path/to/same_file_and_folder_name')
操作系统应该回答 true 还是 false?