我有几百张 .jpg 图像。问题是,有些图像的文件扩展名为“.jpg”,而另一些图像的文件扩展名为“.JPG”。
我使用的是 Windows 7,64 位。如何才能轻松地将所有文件扩展名更改为相同名称(本例中为“.jpg”)?是否有某种命令行命令?
答案1
从目录中的命令提示符:ren *.* *.jpg
答案2
以递归方式执行:
for /r %f in (*.jpg) do rename "%f" "%~nf.jpg"
或者
for /r %f in (*.jpg) do rename "%f" "*.jpg"
答案3
一种 powershell 方式:
get-childitem | where {$_.name -match 'JPG'} | %{rename-item -path $_ -newname "$($_.basename).jpg"}
编辑:请求解释
get-childitem 非常类似于旧的“dir”命令。
where 实际上是 where-object 的别名,是一个过滤 cmdlet
百分号 (%) 是 cmdlet foreach-object 的别名,它对传递的每个项目执行 for 循环。
rename-item 的含义非常明显。:)
您看到的 $_ 是“THIS”的特殊符号。“THIS”是当时正在处理的任何对象。
简而言之:
“获取当前文件夹中包含‘JPG’的文件。对于每个文件,使用原始基本名称重命名它们,并在末尾添加‘.jpg’。”
更新:偶然发现这在 stackoverflow 上。看起来它符合要求。