首页 > 解决方案 > mv:无法重命名:没有这样的文件或目录。但是目录存在

问题描述

我正在尝试重命名 bash 脚本中的目录。我收到以下错误(文件路径已被替换):

mv: can't rename 'some/path': No such file or directory

这是我正在使用的代码:

if [ -d some/path ]; then
  mv some/path other/path
fi

这是没有意义的,因为我事先检查了目录的存在。我还做了一个find . -print列出当前工作目录中的所有文件和目录,并且所需的目录肯定存在。我知道区分大小写,并对所有路径进行了三次检查。任何想法为什么这不起作用?

标签: bashmv

解决方案


错误消息具有误导性。由于目标路径不存在,因此命令失败并出现错误。

这个改变对我有用:

if [ -d some/path ]; then
    mkdir -p other/path
    mv some/path/* other/path
fi

推荐阅读