Using Powershell, I want to rename files in folders by using the name of the folder that the files are in. So in my C:\\temp directory, there are 3 folders called \'aaa\', \'bb
Try this
$dirname = resolve-path . | split-path -leaf
Get-ChildItem -Name | Foreach { Rename-Item $_ ( $dirname + $_ ) }
Be careful not to destroy/delete any of your files. No guarantee.
[IO.Directory]::GetCurrentDirectory().split('\\')[-1]
will give you the directory you are in.
This will rename the files and put an underscore ('_') between the folder name and the file name:
Get-ChildItem C:\temp -Filter *.txt -Recurse | Rename-Item -NewName { $_.Directory.Name+'_'+$_.Name}