Como alterar o nome do arquivo para maiúsculas e a extensão para minúsculas?

Como alterar o nome do arquivo para maiúsculas e a extensão para minúsculas?

Eu tenho alguns arquivos conforme mostrado abaixo:

entrada: ObjectName.TXT

Quero converter o nome do arquivo em maiúsculas, enquanto a extensão deve estar em minúsculas usando o arquivo em lote. por favor me ajude como converter o nome do meu objeto conforme abaixo

saída: OBJECTNAME.txt

Preciso converter nomes de objetos no Windows para uso no Solaris e no Linux.

Responder1

Não é um script em lote, mas um script do 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
}

Responder2

Você poderia usarReNamer'sRegra de renomeação de "Caso":

Caixa: Todas em maiúsculas (extensão de salto), Extensão em minúsculas

Você pode salvar suas regras como uma predefinição e usá-las para renomear arquivos/pastas via linha de comando e também em um arquivo em lote, por exemploReNamer.exe /rename <preset> <files-and-directories>

ReNamer - nome em maiúscula, extensão em minúscula

Responder3

Desculpe porque não posso comentar, mas para fazer isso em uma linha, você faz:

Get-ChildItem | % { Move-Item -Path $_ -Destination (($_.BaseName.ToUpper())+($_.Extension.ToLower())) }

Responder4

Encontrei uma maneira alternativa de fazer isso:

Dir | Rename-Item -NewName {$_.BaseName.ToUpper() + $_.Extension.ToLower()}

informação relacionada