powershell 作为命令行:

powershell 作为命令行:

我有一个客户正在使用他们自己的 CRM 和文件命名结构,我需要更改文件名以匹配他们系统中的数据。

所有 pdf 都将位于同一文件夹中。我想要做的是从 csv“逗号分隔”文件中提取信息,如果“列 A”等于“filename.pdf”,则将“filename.pdf”重命名为“列 B”的值。

感谢您的时间,如果您需要任何其他信息或我需要澄清任何事情,请告诉我。

答案1

ren.csv:

file,new
1.txt,2.txt

powershell 作为命令行:

powershell ipcsv ren.csv^|%{ren $_.file $_.new}

命令:

for /F "tokens=1,2 delims=," %a in (ren.csv) do ren %a %b

python(跨平台):

python rencsv.py

安装unicodecsv模块:

pip install http://pypi.python.org/packages/source/u/unicodecsv/unicodecsv-0.9.4.tar.gz

rencsv.py:

import os, unicodecsv as csv

with open('ren.csv','rt') as csvList:
    renList = csv.reader(csvList, delimiter = ',')
    for row in renList:
        if os.path.exists(row[0]):
           os.renames(row[0],row[1])

php(跨平台):

php rencsv.php

rencsv.php:

<?php
$csv=array_map('str_getcsv',file('ren.csv'));
for ($i = 0; $i <= count($csv) - 1; $i++) {
if (file_exists($csv[$i][0])) {rename($csv[$i][0], $csv[$i][1]);}}
?>

相关内容