所以我想把文件夹名从大写字母改成小写字母,所以我做了
mv FOLDER folder
为什么我不需要创build一个新的文件夹? 我不应该得到像这样的错误
folder does not exist
你不能复制到一个不存在的文件夹,为什么你可以移动到一个?
之间有一个区别:
mv oldfolder/* newfolder
新文件夹不存在的地方,以及:
mv oldfolder newfolder
新文件夹不存在的地方
第一个给出:
mv: target `newfolder' is not a directory
而第二个会将旧文件夹重命名为新文件夹。
在UNIX / Linux中,“mv”执行以下两项操作之一:
在第二种情况下,重命名一个目录不会创build一个新的目录,它只是改变已经存在的目录的名称。
事实上,你的例子有两个不同的东西,取决于“文件夹”是否已经作为一个目录存在。 如果是这样,mv就像上面第一种情况一样工作,即将“FOLDER”移动到“folder”目录,所以现在是“folder / FOLDER”。 另一方面,如果“文件夹”不存在,它只是重命名文件夹。
是的,这可能是相当混乱!
在UNIX中,文件夹是一个特殊的文件 。
当你问mv src dst , mv接受src文件并尝试将其移动到dst 。 现在有几条规则适用。 他们是按顺序,第一个匹配的是应用的一个:
dst不存在,它将成为目标名称(不pipesrc的types如何) dst已经存在,并且是一个目录,它将被视为一个path而不是目的地名称。 所以命令将被理解为mv src dst/src并且src 在 dst (is dst/src的最后一个path) dst已经存在,并且不是一个目录,只有当src不是目录时才会被删除。 mv也是一个重命名的命令。 您正在将一个文件夹重命名为新名称。