如何使用 Windows 命令行将数千个文件的扩展名更改为 *****.jpg?
*****.jpg
你可以使用 ren(如 重命名) :
ren
ren *.XXX *.YYY
当然,将 XXX 和 YYY 切换为适当的扩展。它将改变 来自 XXX 到 YYY。如果要更改所有扩展,只需再次使用通配符:
ren *.* *.YYY
使这种方法递归工作的一种方法是使用 FOR命令。它可以与 /R选项一起使用,以递归地将命令应用于匹配的文件。例如:
FOR
/R
for /R %x in (*.txt) do ren "%x" *.renamed
将所有的 .txt扩展递归地改变为从工作目录开始的 .renamed扩展。 %x是保存匹配文件名的变量。
.txt
.renamed
%x
并且,因为您有数千个文件,所以请确保等到光标再次开始闪烁,表明它已经完成工作。
注意: 这只适用于 cmd。不适用于 Powershell 或 Bash
在 CMD 上
类型
ren *.* *.jpg
. 将选择所有文件,并将其重命名为 * (不管它们有什么名称)加扩展名为 jpg
很简单
在命令提示符中尝试这样做
重命名行为有时“不太直观”; 例如..。
任 * 。THM.Jpg 将重命名您的 THM 文件,使其扩展名为。JPG.例句: GEDC003.THM 将是 GEDC003.jpg
Ren * . THM * b.jpg 将您的 THM 文件重命名为 * . THMb.jpg。例如: GEDC004.THM 将成为 GEDC004.THMb.jpg
Ren * . THM * . b.jpg 将您的 THM 文件重命名为 * . b.jpg: GEDC005.THM 将成为 GEDC005.b.jpg
重命名多个文件扩展名:
你要把 ringtone1.mp3,ringtone2.mp3改成 ringtone1.wav,ringtone2.wav
ringtone1.mp3
ringtone2.mp3
ringtone1.wav
ringtone2.wav
下面是如何做到这一点: 我在命令提示符(CMD)的 d 驱动器中,因此我使用:
d:\>ren *.* *.wav
这只是一个文件扩展名的例子,你可以使用任何类型的文件扩展名,如 WAV,MP3,JPG,GIF,bmp,PDF,DOC,DOCX,TXT 这取决于你的操作系统。
注意: 不适用于 Windows
使用 ren-1.0的正确形式是:
"ren *.*" "#2.jpg"
来自 man ren
man ren
替换模式是另一个具有嵌入通配符的文件名 索引,每个 其中包括字符 # 后跟从1到9的数字。以 匹配文件时,通配符索引将被匹配 在原始文件名中引用通配符。
还有
注意,shell 通常展开通配符 * 和? ,其中 在人的情况是不可取的。因此,在大多数情况下,它是 必须用引号括起搜寻模式。
对于那些希望在批处理文件中执行此操作的人来说,下面的代码可以正常工作:
FOR /R "C:\Users\jonathan\Desktop\test" %%f IN (*.jpg) DO REN "%%f" *.png
在这个示例中,C: Users jathanDesktop test 目录中所有扩展名为. jpg 的文件都更改为 * . png。
在我的例子中,我有一个目录,其中包含800多个以 .StoredProcedure.sql结尾的文件(它们是用 短信编写的脚本)。
.StoredProcedure.sql
上面提到的解决方案并不奏效,但我想到了这个办法:
(根据 批处理编程-获取文件的相对路径的答案)
@echo off setlocal enabledelayedexpansion for %%f in (*) do ( set B=%%f set B=!B:%CD%\=! ren "!B!" "!B:.StoredProcedure=!" )
上面的脚本从文件名中删除子字符串 .StoredProcedure。我相信它可以适应更多的情况下,要求输入和总体上更通用。
.StoredProcedure
我知道这很老套,但我已经着陆了,所提供的答案在 Powershell 上对我不起作用 所以在搜索之后找到了这个解决方案
用动力壳做到这一点
Get-ChildItem -Path C:\Demo -Filter *.txt | Rename-Item -NewName {[System.IO.Path]::ChangeExtension($_.Name, ".old")}
功劳归 http://powershell-guru.com/powershell-tip-108-bulk-rename-extensions-of-files/
使用 改名 npm 包重命名文件的另一种方法。
下面是一个重命名文件扩展名的示例
renamer -d --path-element ext --find ts --replace js *
对我起作用的是这个(先把 CD 放到文件夹中) :
Get-ChildItem -Filter *.old | Rename-Item -NewName {[System.IO.Path]::ChangeExtension($_.Name, ".new")}
我有一个问题与设计师提供没有扩展的图像(苹果 Mac 有时这样做)
ren *. *.jpg
添加扩展名,以便 Windows 用户可以使用这些文件。
对于我的窗口,ren命令不起作用。所以,我用谷歌搜索了一下,用 bash 写了一个通用的解决方案。您可以尝试从 windows 在 git bash上运行它,它也可以在 linux shell 上运行。
git bash
for f in `find * -type f | grep .png`; do mv -- "$f" "${f%.png}.jpg"; done
使用 cmd而不是 powershell,那么它将工作。
cmd
powershell