我有一些如下所示的文件:
输入:对象名称.TXT
我想使用批处理文件将文件的名称转换为大写,而扩展名应为小写。请帮助我如何转换我的对象名称,如下所示
输出:OBJECTNAME.txt
我需要转换 Windows 中的对象名称以便在 Solaris 和 Linux 中使用。
答案1
不是批处理脚本而是 PowerShell 脚本:
# Get all items in the current directory
Get-ChildItem | %{
# Construct a new file name
$newFilename = ($_.BaseName.ToUpper())+($_.Extension.ToLower());
# Move the file
Move-Item $_ $newFilename
}
答案2
你可以使用ReNamer 的“案例”重命名规则:
大小写:全部大写(跳过扩展名),扩展名小写
您可以将规则保存为预设,并使用它来通过命令行以及批处理文件重命名文件/文件夹,例如ReNamer.exe /rename <preset> <files-and-directories>
答案3
抱歉,因为我无法评论,但你可以用一行代码来做:
Get-ChildItem | % { Move-Item -Path $_ -Destination (($_.BaseName.ToUpper())+($_.Extension.ToLower())) }
答案4
找到了另一种方法:
Dir | Rename-Item -NewName {$_.BaseName.ToUpper() + $_.Extension.ToLower()}