Note: I’m a beginner to Powershell and a bit more familiar with Bash (though still a beginner for that too).
*I have multiple PDF files and I want to rename each file based on a list of names found in an Excel/CSV (could be a text file if easier) file.
*The list begins at the A2 cell and the A1 cell has the header ‘name’.
*The files are in sequential order and match the order of the list of names.
Thanks for your help!
Also I had someone help with a similar task of duplicating a Word file that is renamed from a list of names found in a csv file. What would be the code when a txt file is used?
Import-csv ‘.\individuals.csv’ | foreach-object { $newname = ‘2’ + $_.name + '.docx’ Copy-item '.\_2023 Summary Page.docx' $newname }
If it’s a simple text file then you can use:
cat '.\individuals.txt' | foreach-object { $newname = ‘2’ + $_ + '.docx’ Rename-item '.\_2023 Summary Page.docx' $newname }
That will crash if there is more than one line in individuals.txt, because by the second iteration ‘.\_2023 Summary Page.docx’ has been renamed.
I see. Any suggestions on how to correct it?
Just use Copy-Item instead of Rename-Item if you want multiple identical files with different names
Actually they’re all different files.
Then the snippet won’t work because it only ever renames/copies the file
'_2023 Summary Page.docx'
. What are the actual names of the files you want to rename?