2016-07-14 14 views
0

umbenennen Ich benenne mehrere hundert Dateien um, alle die sich mit einer Item ID und dann einem Textbündel unterscheiden. Zum Beispiel ...Dateien in Powershell umbenennen alles nach "_"

BBAT300_abcdefg.xls BBAT400_abcdefg.xls

muss ich alles aus dem Unterstrich löschen, einschließlich der Unterstrich auf, so das Ergebnis ist folgendes:

BBAT300.xls BBAT400 .xls

fand ich dieses Stück Code früher ...

Get-ChildItem -Name -Filter *.xls | foreach {[Regex]::Match($_,"^[^_]*").Value} 

und es appea rs zu arbeiten, aber ich kann es nicht dazu bringen, die Dateien tatsächlich umzubenennen. Meine Kenntnisse im Scripting sind wenig bis gar nicht, daher mag das eine einfache Lösung sein, ich kann es einfach nicht finden. Powershell zeigt die Ergebnisse in Powershell, aber nicht wirklich die Dateien umbenennen.

Antwort

0

Sie können gerade Rohr diese Zeile mit dem Umbenennungs Artikel Befehl:

Get-ChildItem -Filter *.txt | Foreach-Object -Process { 
    $NewName = [Regex]::Match($_.Name,"^[^_]*").Value + '.txt' 
    $_ | Rename-Item -NewName $NewName 
} 

EDIT: Changed es jeden Ort

+1

Das funktionierte zu unterstützen! Vielen Dank! – Brian