1

У меня есть клиент, который использует собственную CRM и структуру имен файлов, и мне нужно изменить имена файлов, чтобы они соответствовали данным в их системе.

Все PDF-файлы будут в одной папке. То, что я хотел бы сделать, это извлечь информацию из CSV-файла с разделителями-запятыми, и если "столбец A" равен «filename.pdf», переименуйте «filename.pdf» в значение "столбца B".

Спасибо за ваше время и, пожалуйста, дайте мне знать, если вам нужна дополнительная информация или мне нужно что-то уточнить.

1 ответ1

1

ren.csv:

file,new
1.txt,2.txt

powershell как командная строка:

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

CMD:

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

питон (кроссплатформенный):

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]);}}
?>

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .