Ich habe einige Dateien, wie unten gezeigt:
Eingabe: Objektname.TXT
Ich möchte den Namen der Datei mithilfe einer Batchdatei in Großbuchstaben umwandeln, während die Erweiterung in Kleinbuchstaben geschrieben werden soll. Bitte helfen Sie mir, meinen Objektnamen wie unten beschrieben umzuwandeln.
Ausgabe: OBJECTNAME.txt
Ich muss Objektnamen in Windows für die Verwendung in Solaris und Linux konvertieren.
Antwort1
Kein Batch-Skript, sondern ein PowerShell-Skript:
# 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
}
Antwort2
Du könntest benutzenUmbenennenUmbenennungsregel für „Groß-/Kleinschreibung“:
Groß-/Kleinschreibung: Alles groß geschrieben (Erweiterung überspringen), Erweiterung klein geschrieben
Sie können Ihre Regeln als Vorgabe speichern und sie verwenden, um Dateien/Ordner über die Kommandozeile oder auch in einer Batch-Datei umzubenennen, z.B.ReNamer.exe /rename <preset> <files-and-directories>
Antwort3
Entschuldigen Sie, ich kann dazu keinen Kommentar abgeben, aber um es in einem Satz auszudrücken:
Get-ChildItem | % { Move-Item -Path $_ -Destination (($_.BaseName.ToUpper())+($_.Extension.ToLower())) }
Antwort4
Habe eine alternative Möglichkeit gefunden, dies zu tun:
Dir | Rename-Item -NewName {$_.BaseName.ToUpper() + $_.Extension.ToLower()}