我正在Win 10中使用git bash。
我在目录中有以下内容:
$ls
DSC_0683 DSC_0686.JPG DSC_0687.JPG DSC_0688.JPG info.json
我想遍历目录并将所有以DSC * .JPG开始的文件更改为DSC *。我尝试过:
$ mv DS*.JPG DS*
mv: target 'DSC_0688.JPG' is not a directory
如何使它正常工作。
答案 0 :(得分:0)
在您的情况下(多个源文件),命令“ mv”的正确语法为
mv SOURCE..FILES DESTINATION_DIR
bash在下面阅读您的表情时:
mv DS*.JPG DS*
它将继续进行所谓的“路径名扩展”(有关更多信息,请参见“ man bash”)。 因此,表达式变为:
mv DSC_0001.JPG DSC_0002.JPG DSC_0688.JPG
bash将DSC_0688.JPG解释为** DESTINATION_DIRECTORY ** 并错误地指出原因是它不是“目录”。
所以您应该写:
mv DS*.JPG DS* DESTINATION_DIR