我有一个客户正在使用他们自己的 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]);}}
?>