Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Perl Files umbenennen anhand csv Datei

Frage Entwicklung Perl

Mitglied: BadFsaadKl

BadFsaadKl (Level 1) - Jetzt verbinden

07.08.2013 um 12:29 Uhr, 1951 Aufrufe, 1 Kommentar

Moin zusammen,

Ich möchte anhand einer csv Datei Bilder von einem Ordner in einen anderen kopieren und dabei umbennen.

Als Quelle habe ich folgende csv:

01.
4220;13072_shop_1 
02.
4219;13071_shop_1 
03.
4182;13033_shop_1
Die erste Spalte ist der alte Dateiname und in der 2ten Spalte ist der neue Dateiname.

Anbei mal meine Anfänge, welche erst mal nur die csv ausliest, und eigentlich die gefundenen Files von A nach B kopiert:

01.
use warnings; 
02.
use File::Copy qw(copy); 
03.
use File::Spec; 
04.
 
05.
my $inputfile = 'C:\Data\export\ergebnis_test.csv'; 
06.
my $search1 = 'C:\Data\export\Bilder\original_images_alt'; 
07.
my $target1 = 'C:\Data\export\Bilder\test'; 
08.
 
09.
open (my $fh, '<', $inputfile) or die "Fehler beim oeffnen: $!"; 
10.
 
11.
opendir my $dirh, $search1 or die $!; 
12.
 
13.
while (<$fh>) { 
14.
    @field = split(/;/, $_); 
15.
    my @files = grep { ! /^\.\.?$/ } readdir $dirh; 
16.
    for my $filename (@files) { 
17.
        my $alt = File::Spec->catfile( $search1, $filename ); 
18.
        if( $filename =~ $field[0] ) { 
19.
            my $neu = File::Spec->catfile( $target1, $filename ); 
20.
            copy $alt, $neu; 
21.
        print "$alt, $neu\n"; 
22.
23.
24.
closedir $dirh; 
25.
close $fh; 
26.
 
Das Auslesen klappt ja wunderbar, auch das Quellverzeichnis wird richtig ausgelesen.
Nur das kopieren funktioniert nicht .

Kann mir jemand helfen ?

Danke
BadFsaadKl
Mitglied: Maveric
07.08.2013 um 14:09 Uhr
Gibt drei Optionen so etwas abzusetzen.

System("code")

Variable xy = `code`

exec("code")

Ich denke sie sind fast selbsterklärend. 1 und 3 öffnen eine extra Shell für sich wobei exec dein Skript an der stelle beendet.
Variante 2 gibt die dir Option das Ergebnis in eine Variable zu schreiben. Für dich wäre also "System("xy") zu benutzten.
Bitte warten ..
Ähnliche Inhalte
Datenbanken
Access 2016 vertauscht Monat und Tag in meiner CSV Datei (1)

Frage von iGordon zum Thema Datenbanken ...

VB for Applications
gelöst Bestimmte Spalten aus CSV-Datei auslesen (VBS) (9)

Frage von Gurkenhobel zum Thema VB for Applications ...

VB for Applications
Bestimmte Daten aus eine CSV-Datei in eine Excel-Tabelle importieren (2)

Frage von MariaElena zum Thema VB for Applications ...

Batch & Shell
gelöst PS Werte CSV-Datei in AD Attribut (3)

Frage von lupolo zum Thema Batch & Shell ...

Neue Wissensbeiträge
Batch & Shell

Batch als Dienst bei Systemstart ohne Anmeldung ausführen

(3)

Tipp von tralveller zum Thema Batch & Shell ...

Sicherheits-Tools

Sicherheitstest von Passwörtern für ganze DB-Tabellen

(1)

Tipp von gdconsult zum Thema Sicherheits-Tools ...

Peripheriegeräte

Was beachten bei der Wahl einer USV Anlage im Serverschrank

(9)

Tipp von zetboxit zum Thema Peripheriegeräte ...

Heiß diskutierte Inhalte
Exchange Server
Exchange 2016 Standard Server 2012 R2 Hetzner Mail (41)

Frage von Datsspeed zum Thema Exchange Server ...

Windows 7
gelöst Lokales Adminprofil defekt (25)

Frage von Yannosch zum Thema Windows 7 ...

Off Topic
gelöst Fachzeitschriften als E-Book oder hardcoded? (11)

Frage von KowaKowalski zum Thema Off Topic ...

Windows 10
Windows Store Apps ohne Windows Store installieren (10)

Frage von keefien zum Thema Windows 10 ...