title image


Smiley Er sucht gar nicht ....




Hi,



gorgoroth hat Dir nix konkretes zur Suche geliefert ...



Zu Deinen eigentlichen Fragen.

1. Deinen Ansatz finde ich durchaus korrekt.

2. Verstehe ich deine Erklärung nicht.



Hier jedenfalls mal mein Skript-Vorschlag:



1 #!/usr/bin/perl

2

3 use strict;

4 use warnings;

5

6

7 #> Folgende Bedingungen gelten fuer die eingelesene Postscript-Datei:

8 #> Die gewünschten Parameter und ihre Werte sind in _einer_ Zeile enthalten!

9 #> Die Parameter sind eindeutig identifizierbar:

10 #> (###ParameterName###) oder (###ParameterName###ParameterValue###)

11

12 #> initialisiere Ergebnis-Hash

13 my %todo = (pdf=>0, mail=>0, fax=>0);

14

15 #> um welche Postscript-Datei geht es eigentlich?

16 my $file = "/path/to/bla.ps";

17

18

19

20 #> oeffne Datei zum Lesen

21 #> open DATA, "< $file " or die "$file: $!";

22

23 #> lese Datei-Inhalt vom Handle

24 while (<DATA>) {

25

26 #> erkenne, ob ein PDF erwuenscht ist

27 $todo{pdf} = 1 if ( m/\(###PDF###\)/ );

28

29 #> sollen wir das Ding an jemanden mailen?

30 $todo{mail} .= $1.$/ if ( m/\(###MAIL###([^#]+)###\)/ );

31

32 #> sollen wir das Ding an jemanden faxen?

33 $todo{fax} .= $1.$/ if ( m/\(###FAX###(\d+)###\)/ );

34

35 #> vielleicht sollte hier kontrolliert werden, ob der Header-

36 #> Bereich beendet wird; dann braucht nicht die gesamte Post-

37 #> script-Datei durchsucht werden

38 last if ( m/some specified string which ends header area/ );

39

40 }

41

42 #> schliesse Handle

43 #> close DATA;

44

45

46 #> erzeuge PDF, wenn erwünscht

47 if ( $todo{pdf} ) {

48

49 #> erzeuge PDF mit externem Kommando

50 print "ps2pdf $file > /tmp/$$.pdf", $/;

51

52 #> PDF mailen und faxen macht nur Sinn, wenn es auch generiert wurde

53 #> wenn die Erzeugung erfolgreich war

54 if ( $? == 0 ) {

55

56 #> versende PDF fuer jede Mailadresse

57 foreach my $address ( split($/, $todo{mail}) ) {

58 print "mailsend --to $address --attach /tmp/$$.pdf", $/;

59 }

60

61 #> versende Fax fuer jede Faxnummer

62 foreach my $number ( split($/, $todo{fax}) ) {

63 print "faxsend --to $number --attach /tmp/$$.pdf", $/;

64 }

65

66 }

67

68 }

69

70

71 __DATA__

72 #237 282 M (###PDF###)[25 25 25 28 36 27 25 25 0]xS

73 #237 340 M (###FAX###04079999997###)[25 25 25 28 25 25 25 25 25 25 0]xS

74 #0.105 0 scol 237 397 M (###MAIL###tux4711@gmx.de###)[25 25 25 8 24 13 25 22 25 25 0]xS

75 #0.105 0 scol 237 455 M (###MAIL###olaf.krause@gmx.de###)[25 25 13 25 22 25 25 0]xS

76 #237 512 M (###FAX###099989899999999###)[25 25 25 28 35 36 25 25 25 25 0]xS







Greetz



Linuxer

Wann werden endlich wieder brauchbare Fehlermeldungen Mode?


Alle Angaben ohne Gewähr und auf eine Linux-Umgebung abgestimmt!


Woran liegt es, dass ein Danke oftmals schwerer geschrieben ist als eine bei weitem längere Frage?


http://perldoc.perl.orghttp://search.cpan.orghttp://httpd.apache.orghttp://www.oreillynet.com/linux/cmd/



geschrieben von

Login

E-Mail:
  

Passwort:
  

Beitrag anfügen

Symbol:
 
 
 
 
 
 
 
 
 
 
 
 
 

Überschrift: