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>
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()}