所以我想将文件夹名称从大写字母更改为小写字母,所以我做了
mv FOLDER folder
为什么我不需要创建一个新文件夹?我不应该收到类似的错误吗
folder does not exist
你不能复制到一个不存在的文件夹中,那为什么你可以移动到一个文件夹中呢?
所以我想将文件夹名称从大写字母更改为小写字母,所以我做了
mv FOLDER folder
为什么我不需要创建一个新文件夹?我不应该收到类似的错误吗
folder does not exist
你不能复制到一个不存在的文件夹中,那为什么你可以移动到一个文件夹中呢?
两者之间有区别:
如果 newfolder 不存在,并且:
newfolder 不存在的地方。
第一个给出:
而第二个会将旧文件夹重命名为新文件夹。
在 UNIX/Linux 中,“mv”做以下两件事之一:
在第二种情况下,重命名目录不会创建新目录,它只是更改已存在目录的名称。
实际上,您的示例做了两件不同的事情,具体取决于“文件夹”是否已经作为目录存在。如果是这样,mv 就像上面第一种情况一样工作,即将“FOLDER”移动到“folder”目录中,所以它现在是“folder/FOLDER”。另一方面,如果“文件夹”不存在,它只是重命名文件夹。
是的,这可能很混乱!
在 UNIX中,文件夹是一个特殊的文件。
当您询问
mv src dst
时,mv
将文件取出src
并尝试将其移至dst
. 现在有几条规则适用。它们是按顺序排列的,第一个匹配的是应用的:dst
不存在,它将是目标名称(无论 的类型如何src
)dst
已经存在并且是目录,它将被视为路径而不是目标名称。所以命令会被理解为mv src dst/src
并被src
移到里面dst
(a的最终路径是dst/src
)dst
已经存在并且不是目录,则只有在不是目录时才会被删除src
。mv
也是一个重命名命令。您正在将一个文件夹重命名为新名称。