批量重命名瓦特/ Powershell – 需要查找和匹配file_id与csv中的标题
我已经知道通过Powershell批量重命名是可能的,但到目前为止,我没有find解决我的问题的答案:
我有一个用ID命名的主要的pdf:
Eg. 332906.pdf 331339.pdf 343807.pdf ...
我从我的电子表格中生成了一个简单的CSV文件,其中包含第一列中的id和第二个文件夹中相应的文件名:
appid;Fullname with ID 332906;Mike Miller_332906; 331339;Tom Hanks_331339; 343807;Scarlett Jo_343807;
…. ….
我必须在我的办公室电脑上这样做,所以我不能下载额外的程序或使用编程lanugages,我所有的是cmd框和Powershell。
我可以这样做吗?
感谢您的帮助!
编辑:电子表格更改为CSV; CSV示例添加
您可能对列标题有问题,但如果将其更改为以下内容:
appid,Fullname_ID 332906,Mike Miller_332906, 331339,Tom Hanks_331339, 343807,Scarlett Jo_343807,
您可以运行这个简单的脚本来执行文件重命名:
$c = import-csv .\path\to.csv $c | % { mv "$($_.appid).pdf" "$($_.Fullname_ID).pdf" }
它所做的是创build一个包含csv文件数据的PowerShell对象。
$c | % { .. }
$c | % { .. }
表示迭代csv中的所有行并运行块中的代码{...}
$_
表示每一行,并且可以使用.appid
和.Fullname_ID
访问列。 move( mv
)命令是您将用来执行重命名的命令。
- 如何将多个variables从Excel文件传递到batch file
- 使用批处理打开Excel文件
- 我如何使用PowerShell自动化SQL查询和创buildExcel文件?
- build立合适的文件名
- batch file删除csv中的列
- 如何使用C#/任何batch file以编程方式在Excel 2010中启用visual basic
- 如何通过在excell中按vbabutton来运行ftp.bat?
- 在Excel中连接使用Loop来创build命令的batch file
- 运行sql脚本的batch file获取错误对OLE DB提供程序“Microsoft.ACE.OLEDB.12.0”的临时访问已被拒绝。