Thread Bash to Perl Umsetzung (42 answers)
Opened by kezall at 2014-03-25 09:45

kezall
 2014-03-26 11:41
#174439 #174439
User since
2014-03-18
84 Artikel
BenutzerIn

user image
Auf keinen Fall Zeit rauben. Es tut mir wirklich leid. Es ist eher mein Mangel an Erfahrung sowie des Umgangs mit Foren. Sicherlich sind auch andere unbewuste Ursachen dabei.

Habe einiges angepasst, aber keine *.tif in Sicht. Obwohl convert vorhanden ist und die *.png in ~/Sca auch.
Fehlermeldung: system( /user/bin/convert, /home/miro/Sca/recol-1.png, /home/miro/Sca/recol-1.tif ) failed: Datei oder Verzeichnis nicht gefunden

Code: (dl )
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
#! /usr/bin/perl
# mkocr.pl
use strict;
use warnings;
# use English;
use Image::Magick;
my $anzahl = 0;
# my $ENV = "/usr/bin";

# display aus Perl-Forum 19.3.2014 von GwenDragon. Bei Ubu 12.04.4 LTS zwingend
# dazu gsfonts-x11, gsfonts-other - offenbart sich erst mit Synaptic!
sub display {
my $file_name = shift;
# Betrachter von ImageMagicks display - ist bei Ubu 12.04.4 LTS.
if (-e '/usr/bin/display') { system('/usr/bin/display',$file_name); }
# Betrachter von X-Server
elsif (-e '/usr/bin/xview') { system('/usr/bin/xview',$file_name); }
}
# check of DIRs - Verzeichnisse
if ( ! "~/Dokus" ) { system( "mkdir ~/Dokus" ); };
if ( ! "~/Sca" ) { system( "mkdir ~/Sca" ); };

# in Sca auf *.png testen - if NOT exit
if (! '~/Sca/*.png') {
print "Keine *.png vorhanden - ENDE.\n";
exit();
};

# Perl-Forum von Linuxer 25.03.2014
my $eintrag;
my $cmd = "/user/bin/convert";

for my $file ( <~/Sca/*.png> ) {

# ausgabe dateiname definieren
( my $newfile = $file ) =~ s/png$/tif/;

# opendir(DIR,"Sca");
# aufruf: convert inputfile outputfile; meldung bei fehler
if (system( $cmd, $file, $newfile ) == 0)
{
$anzahl++;
}
else
{
warn "system( $cmd, $file, $newfile ) failed: $! \n";
}
}
# Dateienanzeige. Umsetzung des ls -m *.tif ?? system(`ls ~/Sca/*.tif`)
{
local $, = ", ";
print <*.tif>;
}

# Gegencheck mit oeffnen in DIR wechselt rein und auflisten.
print " -- -- -- -- --\n";
opendir(DIR,"Sca");
while($eintrag=readdir(DIR)) {
print"$eintrag \n";
}
closedir(DIR);

View full thread Bash to Perl Umsetzung