1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
foreach my $target (@targets) { $fullpath = $homedir.$target . '/inbound_zip'; opendir INZ, $fullpath or die $!; while ( my $in_zip = readdir INZ) { if (($in_zip ne ".") && ($in_zip ne "..")) { if ($in_zip =~ m/.*\.zip$/) { print "Erkannte Zip-Datei: $fullpath/$in_zip\n"; my $cmd = "cd $homedir$target/inbound; unzip $fullpath/$in_zip"; if (`$cmd` == 0) { print "Befehl [$cmd] erfolgreich ausgefuehrt. Entferne Zip-Datei\n"; $cmd = "rm $fullpath/$in_zip"; if (`$cmd` == 0) { print "Befehl [$cmd] erfolgreich ausgefuehrt.\n"; } } } } } }
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
Erkannte Zip-Datei: /usr/temp1/inbound_zip/testdaten_0.zip
Befehl [cd /usr/temp1/inbound; unzip /usr/temp1/inbound_zip/testdaten_8.zip] erfolgreich ausgefuehrt. Entferne Zip-Datei
Befehl [rm /usr/temp1/inbound_zip/testdaten_8.zip] erfolgreich ausgefuehrt.
Erkannte Zip-Datei: /usr/temp1/inbound_zip/testdaten_2.zip
Befehl [cd /usr/temp1/inbound; unzip /usr/temp1/inbound_zip/testdaten_0.zip] erfolgreich ausgefuehrt. Entferne Zip-Datei
Befehl [rm /usr/temp1/inbound_zip/testdaten_0.zip] erfolgreich ausgefuehrt.
Erkannte Zip-Datei: /usr/temp1/inbound_zip/testdaten_8.zip
unzip: cannot find or open /usr/temp1/inbound_zip/testdaten_8.zip, /usr/temp1/inbound_zip/testdaten_8.zip.zip or /usr/temp1/inbound_zip/testdaten_8.zip.ZIP.
Befehl [cd /usr/temp1/inbound; unzip /usr/temp1/inbound_zip/testdaten_8.zip] erfolgreich ausgefuehrt. Entferne Zip-Datei
rm: cannot remove `/usr/temp1/inbound_zip/testdaten_8.zip': No such file or directory
Befehl [rm /usr/temp1/inbound_zip/testdaten_8.zip] erfolgreich ausgefuehrt.
Erkannte Zip-Datei: /usr/temp1/inbound_zip/testdaten_2.zip
replace 20131015162219.XML? [y]es, [n]o, [A]ll, [N]one, [r]ename: NULL
(assuming [N]one)
replace 20131015162217.XML? [y]es, [n]o, [A]ll, [N]one, [r]ename: NULL
(assuming [N]one)
Befehl [cd /usr/temp1/inbound; unzip /usr/temp1/inbound_zip/testdaten_2.zip] erfolgreich ausgefuehrt. Entferne Zip-Datei
Befehl [cd /usr/temp1/inbound; unzip /usr/temp1/inbound_zip/testdaten_2.zip] erfolgreich ausgefuehrt. Entferne Zip-Datei
Befehl [rm /usr/temp1/inbound_zip/testdaten_2.zip] erfolgreich ausgefuehrt.
Erkannte Zip-Datei: /usr/temp1/inbound_zip/testdaten_3.zip
rm: cannot remove `/usr/temp1/inbound_zip/testdaten_2.zip': No such file or directory
Befehl [rm /usr/temp1/inbound_zip/testdaten_2.zip] erfolgreich ausgefuehrt.
Erkannte Zip-Datei: /usr/temp1/inbound_zip/testdaten_3.zip
replace 20131015162559.XML? [y]es, [n]o, [A]ll, [N]one, [r]ename: NULL
(assuming [N]one)
replace 20131015162558.XML? [y]es, [n]o, [A]ll, [N]one, [r]ename: NULL
(assuming [N]one)
Befehl [cd /usr/temp1/inbound; unzip /usr/temp1/inbound_zip/testdaten_3.zip] erfolgreich ausgefuehrt. Entferne Zip-Datei
Befehl [cd /usr/temp1/inbound; unzip /usr/temp1/inbound_zip/testdaten_3.zip] erfolgreich ausgefuehrt. Entferne Zip-Datei
rm: cannot remove `/usr/temp1/inbound_zip/testdaten_3.zip': No such file or directory
Befehl [rm /usr/temp1/inbound_zip/testdaten_3.zip] erfolgreich ausgefuehrt.
Erkannte Zip-Datei: /usr/temp1/inbound_zip/testdaten_1.zip
Befehl [rm /usr/temp1/inbound_zip/testdaten_3.zip] erfolgreich ausgefuehrt.
Erkannte Zip-Datei: /usr/temp1/inbound_zip/testdaten_1.zip
replace 20131015162754.XML? [y]es, [n]o, [A]ll, [N]one, [r]ename: NULL
(assuming [N]one)
replace 20131015162801.XML? [y]es, [n]o, [A]ll, [N]one, [r]ename: NULL
(assuming [N]one)
Befehl [cd /usr/temp1/inbound; unzip /usr/temp1/inbound_zip/testdaten_1.zip] erfolgreich ausgefuehrt. Entferne Zip-Datei
Befehl [cd /usr/temp1/inbound; unzip /usr/temp1/inbound_zip/testdaten_1.zip] erfolgreich ausgefuehrt. Entferne Zip-Datei
rm: cannot remove `/usr/temp1/inbound_zip/testdaten_1.zip': No such file or directory
Befehl [rm /usr/temp1/inbound_zip/testdaten_1.zip] erfolgreich ausgefuehrt.
Befehl [rm /usr/temp1/inbound_zip/testdaten_1.zip] erfolgreich ausgefuehrt.
1
2
3
4
my @output = qx( command ); # oder die leidigen backticks anstatt qx()
if ( $? eq 0 ) {
# cmd ok
}
$cmd = "rm $fullpath/$in_zip";