update script to be invoked only in folder where you want to remove version from folders
This commit is contained in:
parent
b449ded8fe
commit
642edffcfe
@ -1,59 +1,66 @@
|
|||||||
# Get each folder in the current directory
|
# Get each folder in the current directory
|
||||||
$folders = Get-ChildItem -Directory
|
$folders = Get-ChildItem -Directory
|
||||||
|
|
||||||
|
# Array of arrays to store work queue
|
||||||
|
$work = @()
|
||||||
|
|
||||||
foreach ($folder in $folders) {
|
foreach ($folder in $folders) {
|
||||||
# Get each folder in the folder
|
# Find the version number in the folder name
|
||||||
$new_folders = Get-ChildItem -Path $folder.FullName -Directory
|
$version = $folder.Name -match '(\d+\.\d+\.\d+\.\d+)'
|
||||||
foreach ($folder in $new_folders) {
|
if ($version) {
|
||||||
# Find the version number in the folder name
|
# Replace entire folder name with the version number
|
||||||
$version = $folder.Name -match '(\d+\.\d+\.\d+\.\d+)'
|
$new_name = $matches[0]
|
||||||
if ($version) {
|
|
||||||
# Replace entire folder name with the version number
|
|
||||||
$new_name = $matches[0]
|
|
||||||
|
|
||||||
# if version has a alpha character, remove it, eg 0.1.0a, then re-add it to new name
|
# if version has a alpha character, remove it, eg 0.1.0a, then re-add it to new name
|
||||||
$alpha = $folder.Name -match '(\d+\.\d+\.\d+\.\d+)([a-zA-Z])'
|
$alpha = $folder.Name -match '(\d+\.\d+\.\d+\.\d+)([a-zA-Z])'
|
||||||
if ($alpha) {
|
if ($alpha) {
|
||||||
$new_name = $matches[1]
|
$new_name = $matches[1]
|
||||||
$new_name = $new_name + $matches[2]
|
$new_name = $new_name + $matches[2]
|
||||||
}
|
|
||||||
|
|
||||||
#Rename-Item -Path $folder.FullName -NewName $new_name
|
|
||||||
Write-Host "Renamed $folder to $new_name"
|
|
||||||
continue
|
|
||||||
}
|
}
|
||||||
# Find the version number in the folder name
|
$toadd = @($folder.FullName, $new_name)
|
||||||
$version = $folder.Name -match '(\d+\.\d+\.\d+)'
|
$work += $toadd
|
||||||
if ($version) {
|
|
||||||
# Replace entire folder name with the version number
|
|
||||||
$new_name = $matches[0]
|
|
||||||
|
|
||||||
# if version has a alpha character, remove it, eg 0.1.0a, then re-add it to new name
|
Write-Host "Rename $folder to $new_name"
|
||||||
$alpha = $folder.Name -match '(\d+\.\d+\.\d+)([a-zA-Z])'
|
continue
|
||||||
if ($alpha) {
|
}
|
||||||
$new_name = $matches[1]
|
# Find the version number in the folder name
|
||||||
$new_name = $new_name + $matches[2]
|
$version = $folder.Name -match '(\d+\.\d+\.\d+)'
|
||||||
}
|
if ($version) {
|
||||||
|
# Replace entire folder name with the version number
|
||||||
|
$new_name = $matches[0]
|
||||||
|
|
||||||
#Rename-Item -Path $folder.FullName -NewName $new_name
|
# if version has a alpha character, remove it, eg 0.1.0a, then re-add it to new name
|
||||||
Write-Host "Renamed $folder to $new_name"
|
$alpha = $folder.Name -match '(\d+\.\d+\.\d+)([a-zA-Z])'
|
||||||
continue
|
if ($alpha) {
|
||||||
|
$new_name = $matches[1]
|
||||||
|
$new_name = $new_name + $matches[2]
|
||||||
}
|
}
|
||||||
# Find the version number in the folder name
|
$toadd = @($folder.FullName, $new_name)
|
||||||
$version = $folder.Name -match '(\d+\.\d+)'
|
$work += $toadd
|
||||||
if ($version) {
|
|
||||||
# Replace entire folder name with the version number
|
|
||||||
$new_name = $matches[0]
|
|
||||||
|
|
||||||
# if version has a alpha character, remove it, eg 0.1.0a, then re-add it to new name
|
Write-Host "Rename $folder to $new_name"
|
||||||
$alpha = $folder.Name -match '(\d+\.\d+)([a-zA-Z])'
|
continue
|
||||||
if ($alpha) {
|
}
|
||||||
$new_name = $matches[1]
|
# Find the version number in the folder name
|
||||||
$new_name = $new_name + $matches[2]
|
$version = $folder.Name -match '(\d+\.\d+)'
|
||||||
}
|
if ($version) {
|
||||||
|
# Replace entire folder name with the version number
|
||||||
|
$new_name = $matches[0]
|
||||||
|
|
||||||
#Rename-Item -Path $folder.FullName -NewName $new_name
|
# if version has a alpha character, remove it, eg 0.1.0a, then re-add it to new name
|
||||||
Write-Host "Renamed $folder to $new_name"
|
$alpha = $folder.Name -match '(\d+\.\d+)([a-zA-Z])'
|
||||||
continue
|
if ($alpha) {
|
||||||
|
$new_name = $matches[1]
|
||||||
|
$new_name = $new_name + $matches[2]
|
||||||
}
|
}
|
||||||
|
$toadd = @($folder.FullName, $new_name)
|
||||||
|
$work += $toadd
|
||||||
|
|
||||||
|
Write-Host "Rename $folder to $new_name"
|
||||||
|
continue
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Read-Host -Prompt "Press Enter to continue"
|
||||||
|
foreach ($item in $work) {
|
||||||
|
Rename-Item -Path $item[0] -NewName $item[1]
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user