【发布时间】:2019-03-25 11:37:30
【问题描述】:
我正在尝试将具有 de JPG 扩展名的目录中的所有文件重命名为小写 jpg。 我在this post 的帮助下编写了这个 bash 代码:
find . -regex ".*\.JPG" -exec sh -c 'echo "$0" | sed -r "s/\.JPG/\.jpg/" && mv "$0" "$1"' {} \;
但我收到以下错误:
./IMG_1352.jpg
mv: cannot move './IMG_1352.JPG' to '': No such file or directory
(and so on...)
我想我需要更改名称“地点”,但我不知道如何。
【问题讨论】:
-
你是在暗示你有
\r的吗?在你的文件名中? -
正如您在我的帖子中看到的,$1 变量是空的。 $0 获取找到的文件 {} 的值,但是没有 $1 参数。