#make a source, make a dest, get to the target location and go nuts
param($srcNamesFile, $destNamesFile)

if($srcNamesFile -and $destNamesFile){

	$srcLines = (Get-Content -Path $srcNamesFile)
	$destLines = (Get-Content -Path $destNamesFile)
	if($srcLines.length -ne $destLines.length){
		Write-Host "different lengths"
	} else{
		0..($srcLines.length) | ForEach-Object {
			$src = $srcLines[$_]
			$dest = $destLines[$_]
			if($src -and $dest){
				Rename-Item $src $dest
			}
		}
	}
} else{
	$files = (Get-ChildItem -Name)
	$files > _src.txt
	$files > _dest.txt
	Write-Host "edit dest.txt in your favorite text editor, then call me again like:"
	$me = $myInvocation.MyCommand.Name
	Write-Host "$me -srcNamesFile src.txt -destNamesFile dest.txt"
	Write-Host "note we don't recurse."
	Write-Host "hint: to replace a dot that is not the last dot on the line, use this regex: \.(?=.*\..*)"
}