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!

  • BobTheDestroyer@lemy.lolOP
    link
    fedilink
    arrow-up
    0
    ·
    8 months ago

    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
    }
    
    • d3Xt3r@lemmy.nz
      link
      fedilink
      arrow-up
      0
      ·
      8 months ago

      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
      }
      
      • Gurfaild@feddit.de
        link
        fedilink
        arrow-up
        0
        ·
        edit-2
        8 months ago

        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.