我有几百个.jpg图片。 问题是,一些有“.jpg”和其他人有“.JPG”作为文件扩展名。
我在Windows 7,64位。 如何轻松地将所有文件扩展名更改为相同的名称(在这种情况下是“.jpg”)? 有没有某种命令行命令?
从目录中的命令提示符: ren *.* *.jpg
要recursion地做:
for /r %f in (*.jpg) do rename "%f" "%~nf.jpg"
要么
for /r %f in (*.jpg) do rename "%f" "*.jpg"
一个PowerShell的方式:
get-childitem | where {$_.name -match 'JPG'} | %{rename-item -path $_ -newname "$($_.basename).jpg"}
编辑:请求的解释
得到的孩子很像旧的“dir”命令。
其中实际上是where-object的别名,并且是过滤cmdlet
百分号(%)是cmdlet foreach-object的别名,它为每个传递的项目执行for循环。
重命名项目是相当自我解释。 🙂
您看到的$ _是“这”的特殊符号。 “这个”是当时正在处理的任何对象。
所以用简单的英语:
“获取当前文件夹中包含”JPG“的文件。 对于其中的每一个,请用原始基本名称对其进行重命名,并在末尾添加“.jpg”。
更新:在stackoverflow上遇到了这个问题。 看起来它会适合这个法案。