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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
|
#!/usr/bin/perl
if (not defined $ARGV[0]) {die "No parameter given! \ncreate-symlinks.pl <channels.conf> <logos> <link-dir>\n"};
if (not defined $ARGV[1]) {die "No parameter given! \ncreate-symlinks.pl <channels.conf> <logos> <link-dir>\n"};
if (not defined $ARGV[2]) {die "No parameter given! \ncreate-symlinks.pl <channels.conf> <logos> <link-dir>\n"};
my $inpath0 = "$ARGV[1]";
my $linkpath = "$ARGV[2]";
%png0 = %png1 = ();
# png folder einlesen
opendir DIR, "$inpath0" or {die " cant open $inpath0" };
while(my $file = readdir DIR) {
if( $file =~ /\.png$/) {
$value = $file;
$file =~ /(.*).png/;
$key = $1;
$key =~ s/\W//g;
$png0{$key} = $value;
}
}
closedir DIR;
open LOG, ">>translate.log" or die "Can't open log file!\n";
# channels.conf einlesen
open (FILE, "< $ARGV[0]") or die "Can't open file\n";
while (<FILE>) {
$channame = $shortname = '';
$line = $_;
$line =~ s/\r\n//;
if ($line =~ /^:/ or $line =~ /^@/ ) { next; }
@line = split(/:/, $line);
$line[0] =~ s/\'//;
$line[0] =~ s/\///;
if ($line[0] =~ m/;/) { $line[0] =~ /(.*);.*/; $line[0] = $1 }
if ($line[0] =~ m/,/) {
@names = split(/,/, $line[0]);
$channame = $names[0]; $shortname = $names[1];
}
else { $channame = $line[0]; $shortname = ''; }
if ($channame eq '' or $channame eq '.') { next; }
$searchname = $channame;
$searchname =~ s/\W//g;
$searchname =~ tr/[A-Z]/[a-z]/;
if ($png0{$searchname}) {
$cnt++;
$status = symlink("./../$inpath0/$png0{$searchname}","$linkpath/$channame.png");
if ($status == 1) { print LOG "$channame => ./../$inpath0/$png0{$searchname}"; }
else { print LOG "$channame => failed"; }
if ($shortname and $shortname ne '') {
$status = symlink("./../$inpath0/$png0{$searchname}","$linkpath/$shortname.png");
if ($status == 1) { print LOG "\t$shortname"; }
else { print LOG "\t$shortname => failed"; }
}
print LOG "\n"; next;
}
elsif ($shortname and $shortname ne '') {
$searchname = $shortname;
$searchname =~ s/\W//g;
$searchname =~ tr/[A-Z]/[a-z]/;
if ($png0{$searchname}) {
$cnt++;
$status = symlink("./../$inpath0/$png0{$searchname}","$linkpath/$shortname.png");
if ($status == 1) { print LOG "$channame => ./../$inpath0/$png0{$searchname}"; }
else { print LOG "$shortname => failed"; }
if ($channame and $channame ne '') {
$status = symlink("./../$inpath0/$png0{$searchname}","$linkpath/$shortname.png");
if ($status == 1) { print LOG "\t$channame"; }
else { print LOG "\t$channame => failed"; }
}
print LOG "\n"; next;
}
}
$searchname = $channame;
$searchname =~ s/\W//g;
$searchname =~ tr/[A-Z]/[a-z]/;
if ($png1{$searchname}) {
$cnt++;
$status = symlink("./../png1/$png1{$searchname}","$linkpath/$channame.png");
if ($status == 1) { print LOG "$channame => ./../png1/$png1{$searchname}"; }
else { print LOG "$channame => failed"; }
if ($shortname and $shortname ne '') {
$status = symlink("./../png1/$png1{$searchname}","$linkpath/$shortname.png");
if ($status == 1) { print LOG "\t$shortname"; }
else { print LOG "\t$shortname => failed"; }
}
print LOG "\n"; next;
}
elsif ($shortname and $shortname ne '') {
$searchname = $shortname;
$searchname =~ s/\W//g;
$searchname =~ tr/[A-Z]/[a-z]/;
if ($png1{$searchname}) {
$cnt++;
$status = symlink("./../png1/$png1{$searchname}","$linkpath/$shortname.png");
if ($status == 1) { print LOG "$channame => ./../png1/$png1{$searchname}"; }
else { print LOG "$shortname => failed"; }
if ($channame and $channame ne '') {
$status = symlink("./../png1/$png1{$searchname}","$linkpath/$channame.png");
if ($status == 1) { print LOG "\t$shortname"; }
else { print LOG "\t$channame => failed"; }
}
print LOG "\n"; next ;
}
}
}
close(FILE) or die "Can't close file\n";
close(LOG) or die "Can't close file\n";
print $cnt, "\n";
|