Massenumbenennung von PDF-Dateien über Eingabeaufforderung [geschlossen]


1

Ich habe einen Kunden, der dort eine eigene CRM- und Dateinamenstruktur verwendet, und ich muss die Dateinamen ändern, damit sie mit den Daten in ihrem System übereinstimmen.

Alle PDFs befinden sich im selben Ordner. Ich möchte die Informationen aus einer durch Kommas getrennten CSV-Datei abrufen und, wenn "Spalte A" gleich "Dateiname.pdf" ist, "Dateiname.pdf" in "Spalte B" umbenennen.

Vielen Dank für Ihre Zeit und lassen Sie es mich wissen, wenn Sie zusätzliche Informationen benötigen oder wenn ich etwas klären muss.


Welche Befehlszeile des Betriebssystems? Ohne das zu wissen, ist es schwer zu beantworten.
Slhck

Antworten:


1

ren.csv:

file,new
1.txt,2.txt

Powershell als Kommandozeile:

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

cmd:

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

Python (plattformübergreifend):

python rencsv.py

unicodecsvModul installieren :

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 (Crossplattform):

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

Das OP hat nicht gesagt, dass sie Windows verwenden.
Slhck

@slhck Update, Hinzufügen
plattformübergreifender

@slhck: Die OP hat sagen : „Eingabeaufforderung“, die der Name ist cmd.exe.
Scott
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.